From a419c49dcf5f8acfde5fdf94cd641ded5246f38a Mon Sep 17 00:00:00 2001 From: Momo Kornher Date: Thu, 11 Sep 2025 11:42:37 +0100 Subject: [PATCH 1/4] feat: allow covariant-overrides --- package.json | 2 +- src/transforms/deprecated-remover.ts | 16 +- src/validator.ts | 188 +++++++++++++-- test/__snapshots__/negatives.test.ts.snap | 97 ++++++-- test/class-covariant-overrides.test.ts | 217 ++++++++++++++++++ .../neg.implementation-changes-types.1.ts | 6 +- .../neg.implementation-changes-types.2.ts | 9 +- .../neg.implementation-changes-types.3.ts | 3 +- .../neg.implementation-changes-types.4.ts | 14 +- .../neg.implementation-changes-types.5.ts | 11 +- .../neg.implementation-changes-types.6.ts | 11 + .../neg.inheritance-changes-types.1.ts | 6 +- .../neg.inheritance-changes-types.2.ts | 9 +- .../neg.inheritance-changes-types.3.ts | 1 + .../neg.inheritance-changes-types.4.ts | 17 +- .../neg.inheritance-changes-types.5.ts | 15 +- .../neg.inheritance-changes-types.6.ts | 11 + .../neg.inheritance-changes-types.7.ts | 11 + ...-property-changes-mutability.to-mutable.ts | 10 + ...property-changes-mutability.to-readonly.ts | 10 + yarn.lock | 9 +- 21 files changed, 585 insertions(+), 88 deletions(-) create mode 100644 test/class-covariant-overrides.test.ts create mode 100644 test/negatives/neg.implementation-changes-types.6.ts create mode 100644 test/negatives/neg.inheritance-changes-types.6.ts create mode 100644 test/negatives/neg.inheritance-changes-types.7.ts create mode 100644 test/negatives/neg.inheritance-property-changes-mutability.to-mutable.ts create mode 100644 test/negatives/neg.inheritance-property-changes-mutability.to-readonly.ts diff --git a/package.json b/package.json index 25e12514..2dafc034 100644 --- a/package.json +++ b/package.json @@ -71,7 +71,7 @@ }, "dependencies": { "@jsii/check-node": "1.113.0", - "@jsii/spec": "^1.113.0", + "@jsii/spec": "^1.114.1", "case": "^1.6.3", "chalk": "^4", "fast-deep-equal": "^3.1.3", diff --git a/src/transforms/deprecated-remover.ts b/src/transforms/deprecated-remover.ts index 5d7e98a9..9f3bcd55 100644 --- a/src/transforms/deprecated-remover.ts +++ b/src/transforms/deprecated-remover.ts @@ -5,6 +5,7 @@ import { EnumMember, Initializer, InterfaceType, + IntersectionTypeReference, isClassOrInterfaceType, isClassType, isCollectionTypeReference, @@ -12,11 +13,13 @@ import { isMethod, isNamedTypeReference, isPrimitiveTypeReference, + isUnionTypeReference, Method, Parameter, Property, Stability, TypeReference, + UnionTypeReference, } from '@jsii/spec'; import * as ts from 'typescript'; @@ -305,7 +308,10 @@ export class DeprecatedRemover { if (isCollectionTypeReference(ref)) { return this.tryFindReference(ref.collection.elementtype, fqns); } - return ref.union.types.map((type) => this.tryFindReference(type, fqns)).find((typeRef) => typeRef != null); + + return setTypeMembers(ref) + .map((type) => this.tryFindReference(type, fqns)) + .find((typeRef) => typeRef != null); } private shouldFqnBeStripped(fqn: string) { @@ -770,3 +776,11 @@ class DeprecationRemovalTransformer { ); } } + +function setTypeMembers(x: UnionTypeReference | IntersectionTypeReference) { + if (isUnionTypeReference(x)) { + return x.union.types; + } else { + return x.intersection.types; + } +} diff --git a/src/validator.ts b/src/validator.ts index e46fa624..5be6a11a 100644 --- a/src/validator.ts +++ b/src/validator.ts @@ -220,7 +220,9 @@ function _defaultValidations(): ValidationFunction[] { if (!overridden) { return _validateMethodOverride(method, baseType); } - _assertSignaturesMatch(overridden, method, `${type.fqn}#${method.name}`, `overriding ${baseType.fqn}`); + _assertSignaturesMatch(overridden, method, `${type.fqn}#${method.name}`, `overriding ${baseType.fqn}`, { + allowCovariance: true, + }); method.overrides = baseType.fqn; return true; } @@ -237,7 +239,9 @@ function _defaultValidations(): ValidationFunction[] { if (!overridden) { return _validatePropertyOverride(property, baseType); } - _assertPropertiesMatch(overridden, property, `${type.fqn}#${property.name}`, `overriding ${baseType.fqn}`); + _assertPropertiesMatch(overridden, property, `${type.fqn}#${property.name}`, `overriding ${baseType.fqn}`, { + allowCovariance: true, + }); property.overrides = baseType.fqn; return true; } @@ -254,7 +258,9 @@ function _defaultValidations(): ValidationFunction[] { const ifaceType = _dereference(iface, assembly, validator) as spec.InterfaceType; const implemented = (ifaceType.methods ?? []).find((m) => m.name === method.name); if (implemented) { - _assertSignaturesMatch(implemented, method, `${type.fqn}#${method.name}`, `implementing ${ifaceType.fqn}`); + _assertSignaturesMatch(implemented, method, `${type.fqn}#${method.name}`, `implementing ${ifaceType.fqn}`, { + allowCovariance: false, + }); // We won't replace a previous overrides declaration from a method override, as those have // higher precedence than an initial implementation. method.overrides = method.overrides ?? iface; @@ -290,6 +296,7 @@ function _defaultValidations(): ValidationFunction[] { property, `${type.fqn}#${property.name}`, `implementing ${ifaceType.fqn}`, + { allowCovariance: false }, ); // We won't replace a previous overrides declaration from a property override, as those // have higher precedence than an initial implementation. @@ -303,7 +310,15 @@ function _defaultValidations(): ValidationFunction[] { return false; } - function _assertSignaturesMatch(expected: spec.Method, actual: spec.Method, label: string, action: string) { + function _assertSignaturesMatch( + expected: spec.Method, + actual: spec.Method, + label: string, + action: string, + opts: { + allowCovariance: boolean; + }, + ) { if (!!expected.protected !== !!actual.protected) { const expVisibility = expected.protected ? 'protected' : 'public'; const actVisibility = actual.protected ? 'protected' : 'public'; @@ -316,12 +331,24 @@ function _defaultValidations(): ValidationFunction[] { ), ); } + + // Types must generally be the same, but can be covariant sometimes if (!deepEqual(actual.returns, expected.returns)) { - const expType = spec.describeTypeReference(expected.returns?.type); - const actType = spec.describeTypeReference(actual.returns?.type); - diagnostic( - JsiiDiagnostic.JSII_5003_OVERRIDE_CHANGES_RETURN_TYPE.createDetached(label, action, actType, expType), - ); + const actualReturnType = actual.returns?.type; + const expectedReturnType = expected.returns?.type; + + if ( + // static members can never change + actual.static || + // Check if this is a valid covariant return type (actual is more specific than expected) + !(opts.allowCovariance && _isCovariantOf(actualReturnType, expectedReturnType)) + ) { + const expType = spec.describeTypeReference(expectedReturnType); + const actType = spec.describeTypeReference(actualReturnType); + diagnostic( + JsiiDiagnostic.JSII_5003_OVERRIDE_CHANGES_RETURN_TYPE.createDetached(label, action, actType, expType), + ); + } } const expectedParams = expected.parameters ?? []; const actualParams = actual.parameters ?? []; @@ -363,7 +390,113 @@ function _defaultValidations(): ValidationFunction[] { } } - function _assertPropertiesMatch(expected: spec.Property, actual: spec.Property, label: string, action: string) { + function _isCovariantOf(candidateType?: spec.TypeReference, expectedType?: spec.TypeReference): boolean { + // one void, while other isn't => not covariant + if ((candidateType === undefined) !== (expectedType === undefined)) { + return false; + } + + // Same type is always covariant + if (deepEqual(candidateType, expectedType)) { + return true; + } + + if (!spec.isNamedTypeReference(candidateType) || !spec.isNamedTypeReference(expectedType)) { + return false; + } + + const candidateTypeSpec = _dereference(candidateType.fqn, assembly, validator); + const expectedTypeSpec = _dereference(expectedType.fqn, assembly, validator); + + if (!candidateTypeSpec || !expectedTypeSpec) { + return false; + } + + // Handle class-to-class inheritance + if (spec.isClassType(candidateTypeSpec) && spec.isClassType(expectedTypeSpec)) { + // Check if candidateType extends expectedType (directly or indirectly) + return _classExtendsClass(candidateTypeSpec, expectedType.fqn); + } + + // Handle class implementing interface + if (spec.isClassType(candidateTypeSpec) && spec.isInterfaceType(expectedTypeSpec)) { + return _classImplementsInterface(candidateTypeSpec, expectedType.fqn); + } + + return false; + } + + function _classExtendsClass(classType: spec.ClassType, targetFqn: string): boolean { + let current = classType; + while (current.base) { + if (current.base === targetFqn) { + return true; + } + const baseType = _dereference(current.base, assembly, validator); + if (!spec.isClassType(baseType)) { + break; + } + current = baseType; + } + return false; + } + + function _classImplementsInterface(classType: spec.ClassType, interfaceFqn: string): boolean { + // Check direct interfaces + if (classType.interfaces?.includes(interfaceFqn)) { + return true; + } + + // Check inherited interfaces + if (classType.interfaces) { + for (const iface of classType.interfaces) { + const ifaceType = _dereference(iface, assembly, validator); + if (spec.isInterfaceType(ifaceType) && _interfaceExtendsInterface(ifaceType, interfaceFqn)) { + return true; + } + } + } + + // Check base class interfaces + if (classType.base) { + const baseType = _dereference(classType.base, assembly, validator); + if (spec.isClassType(baseType)) { + return _classImplementsInterface(baseType, interfaceFqn); + } + } + + return false; + } + + function _interfaceExtendsInterface(interfaceType: spec.InterfaceType, targetFqn: string): boolean { + if (interfaceType.fqn === targetFqn) { + return true; + } + + if (interfaceType.interfaces) { + for (const iface of interfaceType.interfaces) { + if (iface === targetFqn) { + return true; + } + const ifaceType = _dereference(iface, assembly, validator); + if (spec.isInterfaceType(ifaceType) && _interfaceExtendsInterface(ifaceType, targetFqn)) { + return true; + } + } + } + + return false; + } + + function _assertPropertiesMatch( + expected: spec.Property, + actual: spec.Property, + label: string, + action: string, + opts: { + allowCovariance: boolean; + }, + ) { const actualNode = bindings.getPropertyRelatedNode(actual); const expectedNode = bindings.getPropertyRelatedNode(expected); if (!!expected.protected !== !!actual.protected) { @@ -386,19 +519,28 @@ function _defaultValidations(): ValidationFunction[] { ), ); } - if (!deepEqual(expected.type, actual.type)) { - diagnostic( - JsiiDiagnostic.JSII_5004_OVERRIDE_CHANGES_PROP_TYPE.create( - actualNode?.type ?? declarationName(actualNode), - label, - action, - actual.type, - expected.type, - ).maybeAddRelatedInformation( - expectedNode?.type ?? declarationName(expectedNode), - 'The implemented declaration is here.', - ), - ); + + // Types must generally be the same, but can be covariant sometimes + if (!deepEqual(actual.type, expected.type)) { + if ( + // static members can never change + actual.static || + // immutable properties may change in some case, as long as they are covariant + !(opts.allowCovariance && actual.immutable && _isCovariantOf(actual.type, expected.type)) + ) { + diagnostic( + JsiiDiagnostic.JSII_5004_OVERRIDE_CHANGES_PROP_TYPE.create( + actualNode?.type ?? declarationName(actualNode), + label, + action, + actual.type, + expected.type, + ).maybeAddRelatedInformation( + expectedNode?.type ?? declarationName(expectedNode), + 'The implemented declaration is here.', + ), + ); + } } if (expected.immutable !== actual.immutable) { diagnostic( diff --git a/test/__snapshots__/negatives.test.ts.snap b/test/__snapshots__/negatives.test.ts.snap index 2baf1524..180d2cff 100644 --- a/test/__snapshots__/negatives.test.ts.snap +++ b/test/__snapshots__/negatives.test.ts.snap @@ -273,12 +273,12 @@ neg.implement-struct.ts:6:1 - error JSII3007: Attempt to extend or implement str `; exports[`implementation-changes-types.1 1`] = ` -error JSII5003: "jsii.Something#returnSomething" changes the return type to "jsii.Subclass" when implementing jsii.ISomething. Change it to "jsii.Superclass" +error JSII5003: "jsii.Something#returnSomething" changes the return type to "jsii.UnrelatedClass" when implementing jsii.ISomething. Change it to "jsii.Superclass" `; exports[`implementation-changes-types.2 1`] = ` -error JSII5003: "jsii.ISomethingElse#returnSomething" changes the return type to "jsii.Subclass" when implementing jsii.ISomething. Change it to "jsii.Superclass" +error JSII5006: "jsii.SomethingElse#takeSomething" changes the type of parameter "_argument" to jsii.Superclass when implementing jsii.ISomething. Change it to jsii.Subclass `; @@ -288,25 +288,30 @@ error JSII5006: "jsii.Something#takeSomething" changes the type of parameter "_a `; exports[`implementation-changes-types.4 1`] = ` -neg.implementation-changes-types.4.ts:9:21 - error JSII5004: "jsii.SomethingImpl#something" changes the property type to "jsii.Subclass" when implementing jsii.ISomething. Change it to "jsii.Superclass" +error JSII5006: "jsii.ISomethingElse#takeSomething" changes the type of parameter "_argument" to jsii.Subclass when implementing jsii.ISomething. Change it to jsii.Superclass -9 public something: Subclass = new Subclass(); - ~~~~~~~~ +`; + +exports[`implementation-changes-types.5 1`] = ` +neg.implementation-changes-types.5.ts:10:21 - error JSII5004: "jsii.SomethingImpl#something" changes the property type to "number" when implementing jsii.ISomething. Change it to "jsii.Superclass" - neg.implementation-changes-types.4.ts:5:14 +10 public something: number = 1; + ~~~~~~ + + neg.implementation-changes-types.5.ts:5:14 5 something: Superclass; ~~~~~~~~~~ The implemented declaration is here. `; -exports[`implementation-changes-types.5 1`] = ` -neg.implementation-changes-types.5.ts:14:21 - error JSII5004: "jsii.ISomethingElse#something" changes the property type to "jsii.Subclass" when implementing jsii.ISomething. Change it to "jsii.Superclass" +exports[`implementation-changes-types.6 1`] = ` +neg.implementation-changes-types.6.ts:10:21 - error JSII5004: "jsii.SomethingImpl#something" changes the property type to "jsii.Subclass" when implementing jsii.ISomething. Change it to "jsii.Superclass" -14 public something: Subclass = new Subclass(); +10 public something: Subclass = new Subclass(); ~~~~~~~~ - neg.implementation-changes-types.5.ts:5:14 + neg.implementation-changes-types.6.ts:5:14 5 something: Superclass; ~~~~~~~~~~ The implemented declaration is here. @@ -398,12 +403,12 @@ neg.index-signatures.ts:9:3 - error JSII1999: Index signatures are not supported `; exports[`inheritance-changes-types.1 1`] = ` -error JSII5003: "jsii.SomethingSpecific#returnSomething" changes the return type to "jsii.Subclass" when overriding jsii.Something. Change it to "jsii.Superclass" +error JSII5003: "jsii.SomethingSpecific#returnSomething" changes the return type to "jsii.UnrelatedClass" when overriding jsii.Something. Change it to "jsii.Superclass" `; exports[`inheritance-changes-types.2 1`] = ` -error JSII5003: "jsii.SomethingSpecific#returnSomething" changes the return type to "jsii.Subclass" when overriding jsii.Something. Change it to "jsii.Superclass" +error JSII5006: "jsii.SomethingSpecific#takeSomething" changes the type of parameter "_argument" to jsii.Superclass when overriding jsii.Something. Change it to jsii.Subclass `; @@ -413,27 +418,45 @@ error JSII5006: "jsii.SomethingSpecific#takeSomething" changes the type of param `; exports[`inheritance-changes-types.4 1`] = ` -neg.inheritance-changes-types.4.ts:9:21 - error JSII5004: "jsii.SomethingSpecific#something" changes the property type to "jsii.Subclass" when overriding jsii.SomethingUnspecific. Change it to "jsii.Superclass" +error JSII5006: "jsii.SomethingElse#takeSomething" changes the type of parameter "_argument" to jsii.Subclass when overriding jsii.Something. Change it to jsii.Superclass -9 public something: Subclass = new Subclass(); - ~~~~~~~~ +`; - neg.inheritance-changes-types.4.ts:5:10 - 5 public something = new Superclass(); - ~~~~~~~~~ +exports[`inheritance-changes-types.5 1`] = ` +neg.inheritance-changes-types.5.ts:10:30 - error JSII5004: "jsii.SomethingSpecific#something" changes the property type to "number" when overriding jsii.SomethingUnspecific. Change it to "jsii.Superclass" + +10 public readonly something: number = 1; + ~~~~~~ + + neg.inheritance-changes-types.5.ts:5:19 + 5 public readonly something = new Superclass(); + ~~~~~~~~~ The implemented declaration is here. `; -exports[`inheritance-changes-types.5 1`] = ` -neg.inheritance-changes-types.5.ts:14:21 - error JSII5004: "jsii.SomethingElse#something" changes the property type to "jsii.Subclass" when overriding jsii.SomethingBase. Change it to "jsii.Superclass" +exports[`inheritance-changes-types.6 1`] = ` +neg.inheritance-changes-types.6.ts:10:30 - error JSII5004: "jsii.SomethingSpecific#something" changes the property type to "jsii.Superclass" when overriding jsii.SomethingUnspecific. Change it to "jsii.Subclass" + +10 public readonly something: Superclass = new Superclass(); + ~~~~~~~~~~ + + neg.inheritance-changes-types.6.ts:5:19 + 5 public readonly something = new Subclass(); + ~~~~~~~~~ + The implemented declaration is here. + +`; -14 public something: Subclass = new Subclass(); +exports[`inheritance-changes-types.7 1`] = ` +neg.inheritance-changes-types.7.ts:10:21 - error JSII5004: "jsii.SomethingSpecific#something" changes the property type to "jsii.Subclass" when overriding jsii.SomethingUnspecific. Change it to "jsii.Superclass" + +10 public something: Subclass = new Subclass(); ~~~~~~~~ - neg.inheritance-changes-types.5.ts:5:21 - 5 public something: Superclass = new Superclass(); - ~~~~~~~~~~ + neg.inheritance-changes-types.7.ts:5:10 + 5 public something = new Superclass(); + ~~~~~~~~~ The implemented declaration is here. `; @@ -451,6 +474,32 @@ neg.inheritance-changes-types.from-base.ts:6:30 - error JSII5009: "jsii.HasRequi `; +exports[`inheritance-property-changes-mutability.to-mutable 1`] = ` +neg.inheritance-property-changes-mutability.to-mutable.ts:9:10 - error JSII5010: "jsii.SomethingSpecific#something" turns mutable when overriding jsii.SomethingUnspecific. Make it readonly + +9 public something: Superclass = new Superclass(); + ~~~~~~~~~ + + neg.inheritance-property-changes-mutability.to-mutable.ts:4:10 + 4 public readonly something = new Superclass(); + ~~~~~~~~ + The implemented declaration is here. + +`; + +exports[`inheritance-property-changes-mutability.to-readonly 1`] = ` +neg.inheritance-property-changes-mutability.to-readonly.ts:9:10 - error JSII5010: "jsii.SomethingSpecific#something" turns readonly when overriding jsii.SomethingUnspecific. Make it mutable + +9 public readonly something: Superclass = new Superclass(); + ~~~~~~~~ + + neg.inheritance-property-changes-mutability.to-readonly.ts:4:10 + 4 public something = new Superclass(); + ~~~~~~~~~ + The implemented declaration is here. + +`; + exports[`internal-underscore-class.5 1`] = ` neg.internal-underscore-class.5.ts:3:10 - error JSII8005: Members marked with @internal must have a name starting with "_". Rename "propertyWithInternalButNotUnderscorePrefix" to "_propertyWithInternalButNotUnderscorePrefix" diff --git a/test/class-covariant-overrides.test.ts b/test/class-covariant-overrides.test.ts new file mode 100644 index 00000000..923d436a --- /dev/null +++ b/test/class-covariant-overrides.test.ts @@ -0,0 +1,217 @@ +import * as spec from '@jsii/spec'; +import { sourceToAssemblyHelper } from '../src'; + +describe('Covariant overrides in classes are allowed', () => { + describe('Class properties can be narrowed (covariant)', () => { + test('direct subclass property override', () => { + const assembly = sourceToAssemblyHelper(` + export class Superclass {} + export class Subclass extends Superclass {} + + export class SomethingUnspecific { + public readonly something = new Superclass(); + } + + export class SomethingSpecific extends SomethingUnspecific { + public readonly something: Subclass = new Subclass(); + } + `); + + expect(assembly.types!['testpkg.SomethingSpecific']).toEqual( + expect.objectContaining({ + base: 'testpkg.SomethingUnspecific', + fqn: 'testpkg.SomethingSpecific', + properties: [ + expect.objectContaining({ + immutable: true, + name: 'something', + overrides: 'testpkg.SomethingUnspecific', + type: { + fqn: 'testpkg.Subclass', + }, + }), + ], + symbolId: 'index:SomethingSpecific', + }), + ); + }); + + test('multi-level inheritance property override', () => { + const assembly = sourceToAssemblyHelper(` + export class Superclass {} + export class Subclass extends Superclass {} + export class SubSubclass extends Subclass {} + + export class Base { + public readonly something: Superclass = new Superclass(); + } + + export class Middle extends Base { + public addUnrelatedMember = 3; + } + + export class Derived extends Middle { + public readonly something: SubSubclass = new SubSubclass(); + } + `); + + const derivedType = assembly.types!['testpkg.Derived'] as spec.ClassType; + expect(derivedType.properties).toEqual( + expect.arrayContaining([ + expect.objectContaining({ + immutable: true, + name: 'something', + overrides: 'testpkg.Base', + type: { fqn: 'testpkg.SubSubclass' }, + }), + ]), + ); + }); + }); + + describe('Method return types can be narrowed (covariant)', () => { + test('method return type override', () => { + const assembly = sourceToAssemblyHelper(` + export class Superclass {} + export class Subclass extends Superclass {} + + export class Base { + public createSomething(): Superclass { + return new Superclass(); + } + } + + export class Derived extends Base { + public createSomething(): Subclass { + return new Subclass(); + } + } + `); + + const derivedType = assembly.types!['testpkg.Derived'] as spec.ClassType; + expect(derivedType.methods).toEqual( + expect.arrayContaining([ + expect.objectContaining({ + name: 'createSomething', + overrides: 'testpkg.Base', + returns: { type: { fqn: 'testpkg.Subclass' } }, + }), + ]), + ); + }); + }); + + describe('Interface implementation cannot be covariant', () => { + test('property implementation with narrower type', () => { + expect(() => { + sourceToAssemblyHelper(` + export class Superclass {} + export class Subclass extends Superclass {} + + export interface ISomething { + readonly something: Superclass; + } + + export class SomethingImpl implements ISomething { + public readonly something: Subclass = new Subclass(); + } + `); + }).toThrow('There were compiler errors'); + }); + + test('method implementation with narrower return type', () => { + expect(() => { + sourceToAssemblyHelper(` + export class Superclass {} + export class Subclass extends Superclass {} + + export interface ISomething { + createSomething(): Superclass; + } + + export class SomethingImpl implements ISomething { + public createSomething(): Subclass { + return new Subclass(); + } + } + `); + }).toThrow('There were compiler errors'); + }); + }); + + describe('Static members cannot be covariant', () => { + test('static properties must have exact same type', () => { + expect(() => { + sourceToAssemblyHelper(` + export class Superclass {} + export class Subclass extends Superclass {} + + export class Base { + public static something: Superclass = new Superclass(); + } + + export class Derived extends Base { + public static something: Subclass = new Subclass(); + } + `); + }).toThrow('There were compiler errors'); + }); + + test('static methods must have exact same return type', () => { + expect(() => { + sourceToAssemblyHelper(` + export class Superclass {} + export class Subclass extends Superclass {} + + export class Base { + public static createSomething(): Superclass { + return new Superclass(); + } + } + + export class Derived extends Base { + public static createSomething(): Subclass { + return new Subclass(); + } + } + `); + }).toThrow('There were compiler errors'); + }); + }); + + describe('Parameter types cannot be contravariant', () => { + test('method parameters cannot widen types in overrides', () => { + expect(() => { + sourceToAssemblyHelper(` + export class Superclass {} + export class Subclass extends Superclass {} + + export class Base { + public takeSomething(param: Subclass): void {} + } + + export class Derived extends Base { + public takeSomething(param: Superclass): void {} + } + `); + }).toThrow('There were compiler errors'); + }); + + test('method parameters cannot widen types in implementations', () => { + expect(() => { + sourceToAssemblyHelper(` + export class Superclass {} + export class Subclass extends Superclass {} + + export interface ISomething { + takeSomething(param: Subclass): void; + } + + export class SomethingImpl implements ISomething { + public takeSomething(param: Superclass): void {} + } + `); + }).toThrow('There were compiler errors'); + }); + }); +}); diff --git a/test/negatives/neg.implementation-changes-types.1.ts b/test/negatives/neg.implementation-changes-types.1.ts index 65b5fe96..87860682 100644 --- a/test/negatives/neg.implementation-changes-types.1.ts +++ b/test/negatives/neg.implementation-changes-types.1.ts @@ -1,12 +1,14 @@ export class Superclass {} export class Subclass extends Superclass {} +export class UnrelatedClass {} export interface ISomething { returnSomething(): Superclass; } +// This should fail - UnrelatedClass is not covariant with Superclass export class Something implements ISomething { - public returnSomething(): Subclass { - return 5; + public returnSomething(): UnrelatedClass { + return new UnrelatedClass(); } } diff --git a/test/negatives/neg.implementation-changes-types.2.ts b/test/negatives/neg.implementation-changes-types.2.ts index 947e53dd..8538109c 100644 --- a/test/negatives/neg.implementation-changes-types.2.ts +++ b/test/negatives/neg.implementation-changes-types.2.ts @@ -2,11 +2,12 @@ export class Superclass {} export class Subclass extends Superclass {} export interface ISomething { - returnSomething(): Superclass; + takeSomething(_argument: Subclass): void; } -export class ISomethingElse implements ISomething { - public returnSomething(): Subclass { - return new Subclass(); +// This should fail - contravariant parameter types are not allowed +export class SomethingElse implements ISomething { + public takeSomething(_argument: Superclass): void { + // Nothing } } diff --git a/test/negatives/neg.implementation-changes-types.3.ts b/test/negatives/neg.implementation-changes-types.3.ts index ab1e2dd3..548f27be 100644 --- a/test/negatives/neg.implementation-changes-types.3.ts +++ b/test/negatives/neg.implementation-changes-types.3.ts @@ -2,9 +2,10 @@ export class Superclass {} export class Subclass extends Superclass {} export interface ISomething { - takeSomething(argument: Superclass): void; + takeSomething(_argument: Superclass): void; } +// This should fail - covariant parameter types are not allowed export class Something implements ISomething { public takeSomething(_argument: Subclass): void { // Nothing diff --git a/test/negatives/neg.implementation-changes-types.4.ts b/test/negatives/neg.implementation-changes-types.4.ts index ee197394..debbe885 100644 --- a/test/negatives/neg.implementation-changes-types.4.ts +++ b/test/negatives/neg.implementation-changes-types.4.ts @@ -2,9 +2,17 @@ export class Superclass {} export class Subclass extends Superclass {} export interface ISomething { - something: Superclass; + takeSomething(_argument: Superclass): void; } -export class SomethingImpl implements ISomething { - public something: Subclass = new Subclass(); +export interface ISomethingElse extends ISomething { + addUnrelatedMember: number; +} + +// Should still fail even though 2-level inheritance +export class SomethingImpl implements ISomethingElse { + public addUnrelatedMember: number = 1; + public takeSomething(_argument: Subclass): void { + // Nothing + } } diff --git a/test/negatives/neg.implementation-changes-types.5.ts b/test/negatives/neg.implementation-changes-types.5.ts index ea2a5bfd..85e8f58a 100644 --- a/test/negatives/neg.implementation-changes-types.5.ts +++ b/test/negatives/neg.implementation-changes-types.5.ts @@ -5,12 +5,7 @@ export interface ISomething { something: Superclass; } -export interface ISomethingElse extends ISomething { - addUnrelatedMember: number; -} - -// Should still fail even though 2-level inheritance -export class SomethingImpl implements ISomethingElse { - public something: Subclass = new Subclass(); - public addUnrelatedMember = 1; +// This should fail - number is not covariant with Superclass +export class SomethingImpl implements ISomething { + public something: number = 1; } diff --git a/test/negatives/neg.implementation-changes-types.6.ts b/test/negatives/neg.implementation-changes-types.6.ts new file mode 100644 index 00000000..46f7ac63 --- /dev/null +++ b/test/negatives/neg.implementation-changes-types.6.ts @@ -0,0 +1,11 @@ +export class Superclass {} +export class Subclass extends Superclass {} + +export interface ISomething { + something: Superclass; +} + +// This should fail - covariant changes are not allowed on implementations +export class SomethingImpl implements ISomething { + public something: Subclass = new Subclass(); +} diff --git a/test/negatives/neg.inheritance-changes-types.1.ts b/test/negatives/neg.inheritance-changes-types.1.ts index 34e4c438..76ee997b 100644 --- a/test/negatives/neg.inheritance-changes-types.1.ts +++ b/test/negatives/neg.inheritance-changes-types.1.ts @@ -1,5 +1,6 @@ export class Superclass {} export class Subclass extends Superclass {} +export class UnrelatedClass {} export class Something { public returnSomething(): Superclass { @@ -7,8 +8,9 @@ export class Something { } } +// This should fail - UnrelatedClass is not covariant with Superclass export class SomethingSpecific extends Something { - public returnSomething(): Subclass { - return 5; + public returnSomething(): UnrelatedClass { + return new UnrelatedClass(); } } diff --git a/test/negatives/neg.inheritance-changes-types.2.ts b/test/negatives/neg.inheritance-changes-types.2.ts index 5c8cc266..a5893ddd 100644 --- a/test/negatives/neg.inheritance-changes-types.2.ts +++ b/test/negatives/neg.inheritance-changes-types.2.ts @@ -2,13 +2,14 @@ export class Superclass {} export class Subclass extends Superclass {} export class Something { - public returnSomething(): Superclass { - return new Superclass(); + public takeSomething(_argument: Subclass): void { + // Nothing } } +// This should fail - contravariant parameter types are not allowed export class SomethingSpecific extends Something { - public returnSomething(): Subclass { - return new Subclass(); + public takeSomething(_argument: Superclass): void { + // Nothing } } diff --git a/test/negatives/neg.inheritance-changes-types.3.ts b/test/negatives/neg.inheritance-changes-types.3.ts index 49168b12..63eac561 100644 --- a/test/negatives/neg.inheritance-changes-types.3.ts +++ b/test/negatives/neg.inheritance-changes-types.3.ts @@ -7,6 +7,7 @@ export class Something { } } +// This should fail - covariant parameter types are not allowed export class SomethingSpecific extends Something { public takeSomething(_argument: Subclass): void { // Nothing diff --git a/test/negatives/neg.inheritance-changes-types.4.ts b/test/negatives/neg.inheritance-changes-types.4.ts index 0092dc20..ecbf492a 100644 --- a/test/negatives/neg.inheritance-changes-types.4.ts +++ b/test/negatives/neg.inheritance-changes-types.4.ts @@ -1,10 +1,19 @@ export class Superclass {} export class Subclass extends Superclass {} -export class SomethingUnspecific { - public something = new Superclass(); +export class Something { + public takeSomething(_argument: Superclass): void { + // Nothing + } } -export class SomethingSpecific extends SomethingUnspecific { - public something: Subclass = new Subclass(); +export class SomethingElse extends Something { + public addUnrelatedMember: number = 1; +} + +// Should still fail even though 2-level inheritance +export class SomethingSpecific extends SomethingElse { + public takeSomething(_argument: Subclass): void { + // Nothing + } } diff --git a/test/negatives/neg.inheritance-changes-types.5.ts b/test/negatives/neg.inheritance-changes-types.5.ts index 5b46b8c6..c010135a 100644 --- a/test/negatives/neg.inheritance-changes-types.5.ts +++ b/test/negatives/neg.inheritance-changes-types.5.ts @@ -1,16 +1,11 @@ export class Superclass {} export class Subclass extends Superclass {} -export class SomethingBase { - public something: Superclass = new Superclass(); +export class SomethingUnspecific { + public readonly something = new Superclass(); } -export class SomethingElse extends SomethingBase { - public addUnrelatedMember = 3; -} - -// Should still fail even though 2-level inheritance -export class SomethingDifferent extends SomethingElse { - public something: Subclass = new Subclass(); - public addUnrelatedMember = 1; +// This should fail - number is not covariant with Superclass +export class SomethingSpecific extends SomethingUnspecific { + public readonly something: number = 1; } diff --git a/test/negatives/neg.inheritance-changes-types.6.ts b/test/negatives/neg.inheritance-changes-types.6.ts new file mode 100644 index 00000000..03a144e1 --- /dev/null +++ b/test/negatives/neg.inheritance-changes-types.6.ts @@ -0,0 +1,11 @@ +export class Superclass {} +export class Subclass extends Superclass {} + +export class SomethingUnspecific { + public readonly something = new Subclass(); +} + +// This should fail - contravariant property changes are not allowed +export class SomethingSpecific extends SomethingUnspecific { + public readonly something: Superclass = new Superclass(); +} diff --git a/test/negatives/neg.inheritance-changes-types.7.ts b/test/negatives/neg.inheritance-changes-types.7.ts new file mode 100644 index 00000000..21392727 --- /dev/null +++ b/test/negatives/neg.inheritance-changes-types.7.ts @@ -0,0 +1,11 @@ +export class Superclass {} +export class Subclass extends Superclass {} + +export class SomethingUnspecific { + public something = new Superclass(); +} + +// This should fail - covariant property changes are only allowed on readonly properties +export class SomethingSpecific extends SomethingUnspecific { + public something: Subclass = new Subclass(); +} diff --git a/test/negatives/neg.inheritance-property-changes-mutability.to-mutable.ts b/test/negatives/neg.inheritance-property-changes-mutability.to-mutable.ts new file mode 100644 index 00000000..0a2d1b78 --- /dev/null +++ b/test/negatives/neg.inheritance-property-changes-mutability.to-mutable.ts @@ -0,0 +1,10 @@ +export class Superclass {} + +export class SomethingUnspecific { + public readonly something = new Superclass(); +} + +// This should fail - cannot change to mutability +export class SomethingSpecific extends SomethingUnspecific { + public something: Superclass = new Superclass(); +} diff --git a/test/negatives/neg.inheritance-property-changes-mutability.to-readonly.ts b/test/negatives/neg.inheritance-property-changes-mutability.to-readonly.ts new file mode 100644 index 00000000..22f9876e --- /dev/null +++ b/test/negatives/neg.inheritance-property-changes-mutability.to-readonly.ts @@ -0,0 +1,10 @@ +export class Superclass {} + +export class SomethingUnspecific { + public something = new Superclass(); +} + +// This should fail - cannot change mutability +export class SomethingSpecific extends SomethingUnspecific { + public readonly something: Superclass = new Superclass(); +} diff --git a/yarn.lock b/yarn.lock index 26fac9ae..2c499ce1 100644 --- a/yarn.lock +++ b/yarn.lock @@ -734,13 +734,20 @@ chalk "^4.1.2" semver "^7.7.2" -"@jsii/spec@^1.105.0", "@jsii/spec@^1.113.0": +"@jsii/spec@^1.105.0": version "1.113.0" resolved "https://registry.yarnpkg.com/@jsii/spec/-/spec-1.113.0.tgz#cc9960a69c285466088c370f8e47d07c5ae73fb4" integrity sha512-OAQNfJHzMmE42ySJpelOFFKCgnh6hxcKLnmgtaYEzsFW9UxH9gc945FFOXff52GbhUcigGElCqJ3MclrbgXoGw== dependencies: ajv "^8.17.1" +"@jsii/spec@^1.114.1": + version "1.114.1" + resolved "https://registry.yarnpkg.com/@jsii/spec/-/spec-1.114.1.tgz#9c064d57f062d913bcfda25b5496bdf4c9c95c46" + integrity sha512-SdjVQaNqLkTUK+2R0/t/MnM/NBvv1vzqxO5sn1nnoFD5Wlih8TFOIjl+Q8npzYmOtN+et3D+BMVYrxmVfq4X0w== + dependencies: + ajv "^8.17.1" + "@napi-rs/wasm-runtime@^0.2.11": version "0.2.12" resolved "https://registry.yarnpkg.com/@napi-rs/wasm-runtime/-/wasm-runtime-0.2.12.tgz#3e78a8b96e6c33a6c517e1894efbd5385a7cb6f2" From 461bb6668d622ac42be1976ed9c7033c9ad22a50 Mon Sep 17 00:00:00 2001 From: Momo Kornher Date: Fri, 12 Sep 2025 13:03:45 +0100 Subject: [PATCH 2/4] add feature --- src/assembler.ts | 5 +++++ src/helpers.ts | 7 ++++++- src/project-info.ts | 3 ++- 3 files changed, 13 insertions(+), 2 deletions(-) diff --git a/src/assembler.ts b/src/assembler.ts index ed48a78e..4a6b6c20 100644 --- a/src/assembler.ts +++ b/src/assembler.ts @@ -44,6 +44,7 @@ export class Assembler implements Emitter { private readonly mainFile: string; private readonly tscRootDir?: string; private readonly compressAssembly?: boolean; + private readonly usedFeatures = new Set(); private readonly _typeChecker: ts.TypeChecker; @@ -119,6 +120,9 @@ export class Assembler implements Emitter { this.mainFile = path.resolve(projectInfo.projectRoot, mainFile); this.runtimeTypeInfoInjector = new RuntimeTypeInfoInjector(projectInfo.version); + + // Always enabled features + this.usedFeatures.add('class-covariant-overrides' as any); } public get customTransformers(): ts.CustomTransformers { @@ -220,6 +224,7 @@ export class Assembler implements Emitter { jsiiVersion, bin: this.projectInfo.bin, fingerprint: '', + usedFeatures: this.usedFeatures.size > 0 ? Array.from(this.usedFeatures) : undefined, }; if (this.deprecatedRemover) { diff --git a/src/helpers.ts b/src/helpers.ts index fb08c2d4..13c6830d 100644 --- a/src/helpers.ts +++ b/src/helpers.ts @@ -25,6 +25,11 @@ export type MultipleSourceFiles = { [name: string]: string; }; +/** + * Assembly features supported by this compiler + */ +export const ASSEMBLY_FEATURES_SUPPORTED: spec.JsiiFeature[] = ['class-covariant-overrides' as any]; + /** * Compile a piece of source and return the JSII assembly for it * @@ -115,7 +120,7 @@ export function compileJsiiForTest( if (errors.length > 0 || emitResult.emitSkipped) { throw new JsiiError('There were compiler errors'); } - const assembly = loadAssemblyFromPath(process.cwd(), false); + const assembly = loadAssemblyFromPath(process.cwd(), false, ASSEMBLY_FEATURES_SUPPORTED); const files: Record = {}; for (const filename of Object.keys(source)) { diff --git a/src/project-info.ts b/src/project-info.ts index 376d44f0..a2d33633 100644 --- a/src/project-info.ts +++ b/src/project-info.ts @@ -7,6 +7,7 @@ import * as semver from 'semver'; import * as ts from 'typescript'; import { findDependencyDirectory } from './common/find-utils'; +import { ASSEMBLY_FEATURES_SUPPORTED } from './helpers'; import { JsiiDiagnostic } from './jsii-diagnostic'; import { TypeScriptConfigValidationRuleSet } from './tsconfig'; import { JsiiError, parsePerson, parseRepository } from './utils'; @@ -392,7 +393,7 @@ class DependencyResolver { return this.cache.get(jsiiFile)!; } - const assembly = loadAssemblyFromFile(jsiiFile); + const assembly = loadAssemblyFromFile(jsiiFile, true, ASSEMBLY_FEATURES_SUPPORTED); // Continue loading any dependencies declared in the asm const resolvedDependencies = assembly.dependencies From f478ec473702f0b2d2374d04fbf31279d5bcda43 Mon Sep 17 00:00:00 2001 From: Momo Kornher Date: Mon, 15 Sep 2025 11:48:36 +0100 Subject: [PATCH 3/4] sort features Co-authored-by: Rico Hermans Signed-off-by: Momo Kornher --- src/assembler.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/assembler.ts b/src/assembler.ts index 4a6b6c20..bf248552 100644 --- a/src/assembler.ts +++ b/src/assembler.ts @@ -224,7 +224,7 @@ export class Assembler implements Emitter { jsiiVersion, bin: this.projectInfo.bin, fingerprint: '', - usedFeatures: this.usedFeatures.size > 0 ? Array.from(this.usedFeatures) : undefined, + usedFeatures: this.usedFeatures.size > 0 ? Array.from(this.usedFeatures).sort() : undefined, }; if (this.deprecatedRemover) { From 4891100d9e1b061fc3852cf978406f1ec10a8821 Mon Sep 17 00:00:00 2001 From: Momo Kornher Date: Tue, 23 Sep 2025 12:54:01 +0100 Subject: [PATCH 4/4] stuff??? --- .backportrc.json | 1 - .gitattributes | 3 - .github/workflows/auto-tag-dev-v5.7.yml | 59 - .github/workflows/auto-tag-dev-v5.8.yml | 2 +- .github/workflows/auto-tag-releases-v5.7.yml | 59 - .github/workflows/auto-tag-releases-v5.8.yml | 2 +- .../workflows/upgrade-maintenance-v5.7.yml | 98 - .gitignore | 3 - .projen/files.json | 3 - src/assembler.ts | 16 +- src/validator.ts | 12 +- test/__snapshots__/integration.test.ts.snap | 20467 ---------------- 12 files changed, 18 insertions(+), 20707 deletions(-) delete mode 100644 .github/workflows/auto-tag-dev-v5.7.yml delete mode 100644 .github/workflows/auto-tag-releases-v5.7.yml delete mode 100644 .github/workflows/upgrade-maintenance-v5.7.yml delete mode 100644 test/__snapshots__/integration.test.ts.snap diff --git a/.backportrc.json b/.backportrc.json index 787a0c62..9f58f5a4 100644 --- a/.backportrc.json +++ b/.backportrc.json @@ -8,7 +8,6 @@ "prTitle": "{{sourcePullRequest.title}} (backport #{{sourcePullRequest.number}})", "targetBranchChoices": [ "main", - "maintenance/v5.7", "maintenance/v5.8" ], "//": "~~ Generated by projen. To modify, edit .projenrc.ts and run \"npx projen\"." diff --git a/.gitattributes b/.gitattributes index 31be0953..71da6638 100644 --- a/.gitattributes +++ b/.gitattributes @@ -8,10 +8,8 @@ /.github/pull_request_template.md linguist-generated /.github/workflows/auto-approve.yml linguist-generated /.github/workflows/auto-merge.yml linguist-generated -/.github/workflows/auto-tag-dev-v5.7.yml linguist-generated /.github/workflows/auto-tag-dev-v5.8.yml linguist-generated /.github/workflows/auto-tag-dev.yml linguist-generated -/.github/workflows/auto-tag-releases-v5.7.yml linguist-generated /.github/workflows/auto-tag-releases-v5.8.yml linguist-generated /.github/workflows/auto-tag-releases.yml linguist-generated /.github/workflows/backport.yml linguist-generated @@ -19,7 +17,6 @@ /.github/workflows/pull-request-lint.yml linguist-generated /.github/workflows/release.yml linguist-generated /.github/workflows/upgrade-main.yml linguist-generated -/.github/workflows/upgrade-maintenance-v5.7.yml linguist-generated /.github/workflows/upgrade-maintenance-v5.8.yml linguist-generated /.gitignore linguist-generated /.npmignore linguist-generated diff --git a/.github/workflows/auto-tag-dev-v5.7.yml b/.github/workflows/auto-tag-dev-v5.7.yml deleted file mode 100644 index c7328eab..00000000 --- a/.github/workflows/auto-tag-dev-v5.7.yml +++ /dev/null @@ -1,59 +0,0 @@ -# ~~ Generated by projen. To modify, edit .projenrc.ts and run "npx projen". - -name: auto-tag-dev-v5.7 -run-name: Auto-Tag Prerelease (v5.7) -on: - schedule: - - cron: 0 5 * * 0,2-6 - workflow_dispatch: {} -jobs: - pre-flight: - name: Pre-Flight Checks - runs-on: ubuntu-latest - permissions: - contents: read - outputs: - sha: ${{ steps.git.outputs.sha }} - steps: - - name: Checkout - uses: actions/checkout@v3 - with: - repository: ${{ github.repository }} - ref: maintenance/v5.7 - - name: Setup Node.js - uses: actions/setup-node@v4 - with: - cache: yarn - node-version: "18" - - name: Install dependencies - run: yarn install --frozen-lockfile - - name: Build - run: yarn build - - name: Identify git SHA - id: git - run: echo sha=$(git rev-parse HEAD) >> $GITHUB_OUTPUT - auto-tag: - name: Auto-Tag Release - needs: pre-flight - runs-on: ubuntu-latest - permissions: {} - steps: - - name: Checkout - uses: actions/checkout@v3 - with: - repository: ${{ github.repository }} - token: ${{ secrets.PROJEN_GITHUB_TOKEN }} - ref: ${{ needs.pre-flight.outputs.sha }} - - name: Setup Node.js - uses: actions/setup-node@v4 - with: - cache: yarn - node-version: "18" - - name: Install dependencies - run: yarn install --frozen-lockfile - - name: Set git identity - run: |- - git config user.name "github-actions" - git config user.email "github-actions@github.com" - - name: Tag PreRelease - run: yarn tag-release --idempotent --no-sign --push --prerelease=dev --release-line=5.7 diff --git a/.github/workflows/auto-tag-dev-v5.8.yml b/.github/workflows/auto-tag-dev-v5.8.yml index d01d7623..92a8bf9f 100644 --- a/.github/workflows/auto-tag-dev-v5.8.yml +++ b/.github/workflows/auto-tag-dev-v5.8.yml @@ -4,7 +4,7 @@ name: auto-tag-dev-v5.8 run-name: Auto-Tag Prerelease (v5.8) on: schedule: - - cron: 0 10 * * 0,2-6 + - cron: 0 5 * * 0,2-6 workflow_dispatch: {} jobs: pre-flight: diff --git a/.github/workflows/auto-tag-releases-v5.7.yml b/.github/workflows/auto-tag-releases-v5.7.yml deleted file mode 100644 index 03f84ef9..00000000 --- a/.github/workflows/auto-tag-releases-v5.7.yml +++ /dev/null @@ -1,59 +0,0 @@ -# ~~ Generated by projen. To modify, edit .projenrc.ts and run "npx projen". - -name: auto-tag-releases-v5.7 -run-name: Auto-Tag Release (v5.7) -on: - schedule: - - cron: 0 5 * * 1 - workflow_dispatch: {} -jobs: - pre-flight: - name: Pre-Flight Checks - runs-on: ubuntu-latest - permissions: - contents: read - outputs: - sha: ${{ steps.git.outputs.sha }} - steps: - - name: Checkout - uses: actions/checkout@v3 - with: - repository: ${{ github.repository }} - ref: maintenance/v5.7 - - name: Setup Node.js - uses: actions/setup-node@v4 - with: - cache: yarn - node-version: "18" - - name: Install dependencies - run: yarn install --frozen-lockfile - - name: Build - run: yarn build - - name: Identify git SHA - id: git - run: echo sha=$(git rev-parse HEAD) >> $GITHUB_OUTPUT - auto-tag: - name: Auto-Tag Release - needs: pre-flight - runs-on: ubuntu-latest - permissions: {} - steps: - - name: Checkout - uses: actions/checkout@v3 - with: - repository: ${{ github.repository }} - token: ${{ secrets.PROJEN_GITHUB_TOKEN }} - ref: ${{ needs.pre-flight.outputs.sha }} - - name: Setup Node.js - uses: actions/setup-node@v4 - with: - cache: yarn - node-version: "18" - - name: Install dependencies - run: yarn install --frozen-lockfile - - name: Set git identity - run: |- - git config user.name "github-actions" - git config user.email "github-actions@github.com" - - name: Tag Release - run: yarn tag-release --idempotent --no-sign --push --release-line=5.7 diff --git a/.github/workflows/auto-tag-releases-v5.8.yml b/.github/workflows/auto-tag-releases-v5.8.yml index 4d425d60..59c65ef5 100644 --- a/.github/workflows/auto-tag-releases-v5.8.yml +++ b/.github/workflows/auto-tag-releases-v5.8.yml @@ -4,7 +4,7 @@ name: auto-tag-releases-v5.8 run-name: Auto-Tag Release (v5.8) on: schedule: - - cron: 0 10 * * 1 + - cron: 0 5 * * 1 workflow_dispatch: {} jobs: pre-flight: diff --git a/.github/workflows/upgrade-maintenance-v5.7.yml b/.github/workflows/upgrade-maintenance-v5.7.yml deleted file mode 100644 index 41dd1bc9..00000000 --- a/.github/workflows/upgrade-maintenance-v5.7.yml +++ /dev/null @@ -1,98 +0,0 @@ -# ~~ Generated by projen. To modify, edit .projenrc.ts and run "npx projen". - -name: upgrade-maintenance-v5.7 -on: - workflow_dispatch: {} - schedule: - - cron: 0 0 * * * -jobs: - upgrade: - name: Upgrade - runs-on: ubuntu-latest - permissions: - contents: read - outputs: - patch_created: ${{ steps.create_patch.outputs.patch_created }} - steps: - - name: Checkout - uses: actions/checkout@v3 - with: - ref: maintenance/v5.7 - - name: Setup Node.js - uses: actions/setup-node@v4 - with: - node-version: lts/* - - name: Install dependencies - run: yarn install --check-files --frozen-lockfile - - name: Back-port projenrc changes from main - env: - CI: "false" - run: git fetch origin main && git checkout FETCH_HEAD -- README.md && yarn projen - - name: Upgrade dependencies - run: npx projen upgrade - - name: Find mutations - id: create_patch - run: |- - git add . - git diff --staged --patch --exit-code > repo.patch || echo "patch_created=true" >> $GITHUB_OUTPUT - shell: bash - working-directory: ./ - - name: Upload patch - if: steps.create_patch.outputs.patch_created - uses: actions/upload-artifact@v4.4.0 - with: - name: repo.patch - path: repo.patch - overwrite: true - pr: - name: Create Pull Request - needs: upgrade - runs-on: ubuntu-latest - permissions: - contents: read - if: ${{ needs.upgrade.outputs.patch_created }} - steps: - - name: Checkout - uses: actions/checkout@v4 - with: - ref: maintenance/v5.7 - - name: Download patch - uses: actions/download-artifact@v4 - with: - name: repo.patch - path: ${{ runner.temp }} - - name: Apply patch - run: '[ -s ${{ runner.temp }}/repo.patch ] && git apply ${{ runner.temp }}/repo.patch || echo "Empty patch. Skipping."' - - name: Set git identity - run: |- - git config user.name "github-actions" - git config user.email "github-actions@github.com" - - name: Create Pull Request - id: create-pr - uses: peter-evans/create-pull-request@v6 - with: - token: ${{ secrets.PROJEN_GITHUB_TOKEN }} - commit-message: |- - chore(deps): upgrade dependencies - - Upgrades project dependencies. See details in [workflow run]. - - [Workflow Run]: ${{ github.server_url }}/${{ github.repository }}/actions/runs/${{ github.run_id }} - - ------ - - *Automatically created by projen via the "upgrade-maintenance-v5.7" workflow* - branch: github-actions/upgrade-maintenance-v5.7 - title: "chore(deps): upgrade dependencies" - labels: auto-approve - body: |- - Upgrades project dependencies. See details in [workflow run]. - - [Workflow Run]: ${{ github.server_url }}/${{ github.repository }}/actions/runs/${{ github.run_id }} - - ------ - - *Automatically created by projen via the "upgrade-maintenance-v5.7" workflow* - author: github-actions - committer: github-actions - signoff: true diff --git a/.gitignore b/.gitignore index 9840b758..03a501f8 100644 --- a/.gitignore +++ b/.gitignore @@ -43,7 +43,6 @@ jspm_packages/ /dist/ !/.eslintrc.json !/.github/workflows/upgrade-main.yml -!/.github/workflows/upgrade-maintenance-v5.7.yml !/.github/workflows/upgrade-maintenance-v5.8.yml /build-tools/tsconfig.json /projenrc/tsconfig.json @@ -59,8 +58,6 @@ jspm_packages/ !/.github/workflows/release.yml !/.github/workflows/auto-tag-dev.yml !/.github/workflows/auto-tag-releases.yml -!/.github/workflows/auto-tag-dev-v5.7.yml -!/.github/workflows/auto-tag-releases-v5.7.yml !/.github/workflows/auto-tag-dev-v5.8.yml !/.github/workflows/auto-tag-releases-v5.8.yml !/.backportrc.json diff --git a/.projen/files.json b/.projen/files.json index 552b8a49..f476d5ab 100644 --- a/.projen/files.json +++ b/.projen/files.json @@ -6,10 +6,8 @@ ".github/pull_request_template.md", ".github/workflows/auto-approve.yml", ".github/workflows/auto-merge.yml", - ".github/workflows/auto-tag-dev-v5.7.yml", ".github/workflows/auto-tag-dev-v5.8.yml", ".github/workflows/auto-tag-dev.yml", - ".github/workflows/auto-tag-releases-v5.7.yml", ".github/workflows/auto-tag-releases-v5.8.yml", ".github/workflows/auto-tag-releases.yml", ".github/workflows/backport.yml", @@ -17,7 +15,6 @@ ".github/workflows/pull-request-lint.yml", ".github/workflows/release.yml", ".github/workflows/upgrade-main.yml", - ".github/workflows/upgrade-maintenance-v5.7.yml", ".github/workflows/upgrade-maintenance-v5.8.yml", ".gitignore", ".npmignore", diff --git a/src/assembler.ts b/src/assembler.ts index bf248552..057343fa 100644 --- a/src/assembler.ts +++ b/src/assembler.ts @@ -122,7 +122,7 @@ export class Assembler implements Emitter { this.runtimeTypeInfoInjector = new RuntimeTypeInfoInjector(projectInfo.version); // Always enabled features - this.usedFeatures.add('class-covariant-overrides' as any); + // this.usedFeatures.add('class-covariant-overrides' as any); } public get customTransformers(): ts.CustomTransformers { @@ -1839,13 +1839,13 @@ export class Assembler implements Emitter { const baseMembers = memberNames(base); for (const memberName of names) { if (baseMembers.includes(memberName)) { - this._diagnostics.push( - JsiiDiagnostic.JSII_5015_REDECLARED_INTERFACE_MEMBER.create( - type.symbol.valueDeclaration ?? type.symbol.declarations?.[0], - memberName, - jsiiType, - ), - ); + // this._diagnostics.push( + // JsiiDiagnostic.JSII_5015_REDECLARED_INTERFACE_MEMBER.create( + // type.symbol.valueDeclaration ?? type.symbol.declarations?.[0], + // memberName, + // jsiiType, + // ), + // ); } } // Recurse upwards diff --git a/src/validator.ts b/src/validator.ts index 5be6a11a..c6b11e6e 100644 --- a/src/validator.ts +++ b/src/validator.ts @@ -296,7 +296,7 @@ function _defaultValidations(): ValidationFunction[] { property, `${type.fqn}#${property.name}`, `implementing ${ifaceType.fqn}`, - { allowCovariance: false }, + { allowCovariance: true }, ); // We won't replace a previous overrides declaration from a property override, as those // have higher precedence than an initial implementation. @@ -367,9 +367,9 @@ function _defaultValidations(): ValidationFunction[] { const expParam = expectedParams[i]; const actParam = actualParams[i]; if (!deepEqual(expParam.type, actParam.type)) { - diagnostic( - JsiiDiagnostic.JSII_5006_OVERRIDE_CHANGES_PARAM_TYPE.createDetached(label, action, actParam, expParam), - ); + // diagnostic( + // JsiiDiagnostic.JSII_5006_OVERRIDE_CHANGES_PARAM_TYPE.createDetached(label, action, actParam, expParam), + // ); } // Not-ing those to force the values to a strictly boolean context (they're optional, undefined means false) if (expParam.variadic !== actParam.variadic) { @@ -423,6 +423,10 @@ function _defaultValidations(): ValidationFunction[] { return _classImplementsInterface(candidateTypeSpec, expectedType.fqn); } + if (spec.isInterfaceType(candidateTypeSpec) && spec.isInterfaceType(expectedTypeSpec)) { + return _interfaceExtendsInterface(candidateTypeSpec, expectedType.fqn); + } + return false; } diff --git a/test/__snapshots__/integration.test.ts.snap b/test/__snapshots__/integration.test.ts.snap deleted file mode 100644 index ab2a5783..00000000 --- a/test/__snapshots__/integration.test.ts.snap +++ /dev/null @@ -1,20467 +0,0 @@ -// Jest Snapshot v1, https://goo.gl/fbAQLP - -exports[`integration test: @scope/jsii-calc-base 1`] = ` -{ - "author": { - "name": "Amazon Web Services", - "organization": true, - "roles": [ - "author", - ], - "url": "https://aws.amazon.com", - }, - "dependencies": { - "@scope/jsii-calc-base-of-base": "^2.1.1", - }, - "dependencyClosure": { - "@scope/jsii-calc-base-of-base": { - "targets": { - "dotnet": { - "namespace": "Amazon.JSII.Tests.CalculatorNamespace.BaseOfBaseNamespace", - "packageId": "Amazon.JSII.Tests.CalculatorPackageId.BaseOfBasePackageId", - }, - "go": { - "moduleName": "github.com/aws/jsii/jsii-calc/go", - }, - "java": { - "maven": { - "artifactId": "calculator-base-of-base", - "groupId": "software.amazon.jsii.tests", - }, - "package": "software.amazon.jsii.tests.calculator.baseofbase", - }, - "js": { - "npm": "@scope/jsii-calc-base-of-base", - }, - "python": { - "distName": "scope.jsii-calc-base-of-base", - "module": "scope.jsii_calc_base_of_base", - }, - }, - }, - }, - "description": "An example direct dependency for jsii-calc.", - "fingerprint": Any, - "homepage": "https://github.com/aws/jsii", - "jsiiVersion": Any, - "license": "Apache-2.0", - "metadata": { - "jsii": { - "compiledWithDeprecationWarnings": true, - "pacmak": { - "hasDefaultInterfaces": false, - }, - "rosetta": { - "strict": true, - }, - }, - }, - "name": "@scope/jsii-calc-base", - "repository": { - "directory": "packages/@scope/jsii-calc-base", - "type": "git", - "url": "https://github.com/aws/jsii.git", - }, - "schema": "jsii/0.10.0", - "submodules": { - "@scope/jsii-calc-base.deep": { - "locationInModule": { - "filename": "lib/index.ts", - "line": 39, - }, - "symbolId": "lib/deep/index:", - }, - }, - "targets": { - "dotnet": { - "iconUrl": "https://raw.githubusercontent.com/aws/aws-cdk/main/logo/default-256-dark.png", - "namespace": "Amazon.JSII.Tests.CalculatorNamespace.BaseNamespace", - "packageId": "Amazon.JSII.Tests.CalculatorPackageId.BasePackageId", - }, - "go": { - "moduleName": "github.com/aws/jsii/jsii-calc/go", - "packageName": "jcb", - }, - "java": { - "maven": { - "artifactId": "calculator-base", - "groupId": "software.amazon.jsii.tests", - }, - "package": "software.amazon.jsii.tests.calculator.base", - }, - "js": { - "npm": "@scope/jsii-calc-base", - }, - "python": { - "distName": "scope.jsii-calc-base", - "module": "scope.jsii_calc_base", - }, - }, - "types": { - "@scope/jsii-calc-base.Base": { - "abstract": true, - "assembly": "@scope/jsii-calc-base", - "docs": { - "summary": "A base class.", - }, - "fqn": "@scope/jsii-calc-base.Base", - "initializer": {}, - "kind": "class", - "locationInModule": { - "filename": "lib/index.ts", - "line": 13, - }, - "methods": [ - { - "docs": { - "returns": "the name of the class (to verify native type names are created for derived classes).", - }, - "locationInModule": { - "filename": "lib/index.ts", - "line": 17, - }, - "name": "typeName", - "returns": { - "type": { - "primitive": "any", - }, - }, - }, - ], - "name": "Base", - "symbolId": "lib/index:Base", - }, - "@scope/jsii-calc-base.BaseProps": { - "assembly": "@scope/jsii-calc-base", - "datatype": true, - "fqn": "@scope/jsii-calc-base.BaseProps", - "interfaces": [ - "@scope/jsii-calc-base-of-base.VeryBaseProps", - ], - "kind": "interface", - "locationInModule": { - "filename": "lib/index.ts", - "line": 22, - }, - "name": "BaseProps", - "properties": [ - { - "abstract": true, - "immutable": true, - "locationInModule": { - "filename": "lib/index.ts", - "line": 23, - }, - "name": "bar", - "type": { - "primitive": "string", - }, - }, - ], - "symbolId": "lib/index:BaseProps", - }, - "@scope/jsii-calc-base.IBaseInterface": { - "assembly": "@scope/jsii-calc-base", - "fqn": "@scope/jsii-calc-base.IBaseInterface", - "interfaces": [ - "@scope/jsii-calc-base-of-base.IVeryBaseInterface", - ], - "kind": "interface", - "locationInModule": { - "filename": "lib/index.ts", - "line": 26, - }, - "methods": [ - { - "abstract": true, - "locationInModule": { - "filename": "lib/index.ts", - "line": 27, - }, - "name": "bar", - }, - ], - "name": "IBaseInterface", - "symbolId": "lib/index:IBaseInterface", - }, - "@scope/jsii-calc-base.StaticConsumer": { - "assembly": "@scope/jsii-calc-base", - "docs": { - "summary": "Hides the transitive dependency of base-of-base.", - }, - "fqn": "@scope/jsii-calc-base.StaticConsumer", - "initializer": {}, - "kind": "class", - "locationInModule": { - "filename": "lib/index.ts", - "line": 33, - }, - "methods": [ - { - "locationInModule": { - "filename": "lib/index.ts", - "line": 34, - }, - "name": "consume", - "parameters": [ - { - "name": "args", - "type": { - "primitive": "any", - }, - "variadic": true, - }, - ], - "static": true, - "variadic": true, - }, - ], - "name": "StaticConsumer", - "symbolId": "lib/index:StaticConsumer", - }, - "@scope/jsii-calc-base.deep.BarrelImportClass": { - "assembly": "@scope/jsii-calc-base", - "fqn": "@scope/jsii-calc-base.deep.BarrelImportClass", - "initializer": {}, - "kind": "class", - "locationInModule": { - "filename": "lib/deep/index.ts", - "line": 1, - }, - "name": "BarrelImportClass", - "namespace": "deep", - "symbolId": "lib/deep/index:BarrelImportClass", - }, - }, - "version": "0.0.0", -} -`; - -exports[`integration test: @scope/jsii-calc-base-of-base 1`] = ` -{ - "author": { - "name": "Amazon Web Services", - "organization": true, - "roles": [ - "author", - ], - "url": "https://aws.amazon.com", - }, - "description": "An example transitive dependency for jsii-calc.", - "fingerprint": Any, - "homepage": "https://github.com/aws/jsii", - "jsiiVersion": Any, - "license": "Apache-2.0", - "metadata": { - "jsii": { - "pacmak": { - "hasDefaultInterfaces": true, - }, - "rosetta": { - "strict": true, - }, - }, - "tscRootDir": ".", - }, - "name": "@scope/jsii-calc-base-of-base", - "repository": { - "directory": "packages/@scope/jsii-calc-base-of-base", - "type": "git", - "url": "https://github.com/aws/jsii.git", - }, - "schema": "jsii/0.10.0", - "targets": { - "dotnet": { - "namespace": "Amazon.JSII.Tests.CalculatorNamespace.BaseOfBaseNamespace", - "packageId": "Amazon.JSII.Tests.CalculatorPackageId.BaseOfBasePackageId", - }, - "go": { - "moduleName": "github.com/aws/jsii/jsii-calc/go", - }, - "java": { - "maven": { - "artifactId": "calculator-base-of-base", - "groupId": "software.amazon.jsii.tests", - }, - "package": "software.amazon.jsii.tests.calculator.baseofbase", - }, - "js": { - "npm": "@scope/jsii-calc-base-of-base", - }, - "python": { - "distName": "scope.jsii-calc-base-of-base", - "module": "scope.jsii_calc_base_of_base", - }, - }, - "types": { - "@scope/jsii-calc-base-of-base.IVeryBaseInterface": { - "assembly": "@scope/jsii-calc-base-of-base", - "fqn": "@scope/jsii-calc-base-of-base.IVeryBaseInterface", - "kind": "interface", - "locationInModule": { - "filename": "lib/index.ts", - "line": 1, - }, - "methods": [ - { - "abstract": true, - "locationInModule": { - "filename": "lib/index.ts", - "line": 2, - }, - "name": "foo", - }, - ], - "name": "IVeryBaseInterface", - "symbolId": "lib/index:IVeryBaseInterface", - }, - "@scope/jsii-calc-base-of-base.StaticConsumer": { - "assembly": "@scope/jsii-calc-base-of-base", - "fqn": "@scope/jsii-calc-base-of-base.StaticConsumer", - "kind": "class", - "locationInModule": { - "filename": "lib/index.ts", - "line": 19, - }, - "methods": [ - { - "locationInModule": { - "filename": "lib/index.ts", - "line": 22, - }, - "name": "consume", - "parameters": [ - { - "name": "_args", - "type": { - "primitive": "any", - }, - "variadic": true, - }, - ], - "static": true, - "variadic": true, - }, - ], - "name": "StaticConsumer", - "symbolId": "lib/index:StaticConsumer", - }, - "@scope/jsii-calc-base-of-base.Very": { - "assembly": "@scope/jsii-calc-base-of-base", - "docs": { - "stability": "experimental", - "summary": "Something here.", - }, - "fqn": "@scope/jsii-calc-base-of-base.Very", - "initializer": {}, - "kind": "class", - "locationInModule": { - "filename": "lib/index.ts", - "line": 13, - }, - "methods": [ - { - "docs": { - "stability": "experimental", - }, - "locationInModule": { - "filename": "lib/index.ts", - "line": 14, - }, - "name": "hey", - "returns": { - "type": { - "primitive": "number", - }, - }, - }, - ], - "name": "Very", - "symbolId": "lib/index:Very", - }, - "@scope/jsii-calc-base-of-base.VeryBaseProps": { - "assembly": "@scope/jsii-calc-base-of-base", - "datatype": true, - "fqn": "@scope/jsii-calc-base-of-base.VeryBaseProps", - "kind": "interface", - "locationInModule": { - "filename": "lib/index.ts", - "line": 5, - }, - "name": "VeryBaseProps", - "properties": [ - { - "abstract": true, - "immutable": true, - "locationInModule": { - "filename": "lib/index.ts", - "line": 6, - }, - "name": "foo", - "type": { - "fqn": "@scope/jsii-calc-base-of-base.Very", - }, - }, - ], - "symbolId": "lib/index:VeryBaseProps", - }, - }, - "version": "2.1.1", -} -`; - -exports[`integration test: @scope/jsii-calc-lib 1`] = ` -{ - "author": { - "name": "Amazon Web Services", - "organization": true, - "roles": [ - "author", - ], - "url": "https://aws.amazon.com", - }, - "dependencies": { - "@scope/jsii-calc-base": "^0.0.0", - "@scope/jsii-calc-base-of-base": "^2.1.1", - }, - "dependencyClosure": { - "@scope/jsii-calc-base": { - "submodules": { - "@scope/jsii-calc-base.deep": {}, - }, - "targets": { - "dotnet": { - "iconUrl": "https://raw.githubusercontent.com/aws/aws-cdk/main/logo/default-256-dark.png", - "namespace": "Amazon.JSII.Tests.CalculatorNamespace.BaseNamespace", - "packageId": "Amazon.JSII.Tests.CalculatorPackageId.BasePackageId", - }, - "go": { - "moduleName": "github.com/aws/jsii/jsii-calc/go", - "packageName": "jcb", - }, - "java": { - "maven": { - "artifactId": "calculator-base", - "groupId": "software.amazon.jsii.tests", - }, - "package": "software.amazon.jsii.tests.calculator.base", - }, - "js": { - "npm": "@scope/jsii-calc-base", - }, - "python": { - "distName": "scope.jsii-calc-base", - "module": "scope.jsii_calc_base", - }, - }, - }, - "@scope/jsii-calc-base-of-base": { - "targets": { - "dotnet": { - "namespace": "Amazon.JSII.Tests.CalculatorNamespace.BaseOfBaseNamespace", - "packageId": "Amazon.JSII.Tests.CalculatorPackageId.BaseOfBasePackageId", - }, - "go": { - "moduleName": "github.com/aws/jsii/jsii-calc/go", - }, - "java": { - "maven": { - "artifactId": "calculator-base-of-base", - "groupId": "software.amazon.jsii.tests", - }, - "package": "software.amazon.jsii.tests.calculator.baseofbase", - }, - "js": { - "npm": "@scope/jsii-calc-base-of-base", - }, - "python": { - "distName": "scope.jsii-calc-base-of-base", - "module": "scope.jsii_calc_base_of_base", - }, - }, - }, - }, - "description": "A simple calcuator library built on JSII.", - "docs": { - "deprecated": "Really just deprecated for shows...", - "stability": "deprecated", - }, - "fingerprint": Any, - "homepage": "https://github.com/aws/jsii", - "jsiiVersion": Any, - "license": "Apache-2.0", - "metadata": { - "jsii": { - "compiledWithDeprecationWarnings": true, - "pacmak": { - "hasDefaultInterfaces": true, - }, - "rosetta": { - "strict": true, - }, - }, - "tscRootDir": "lib", - }, - "name": "@scope/jsii-calc-lib", - "repository": { - "directory": "packages/@scope/jsii-calc-lib", - "type": "git", - "url": "https://github.com/aws/jsii.git", - }, - "schema": "jsii/0.10.0", - "submodules": { - "@scope/jsii-calc-lib.deprecationRemoval": { - "locationInModule": { - "filename": "lib/index.ts", - "line": 136, - }, - "symbolId": "lib/deprecation-removal:", - }, - "@scope/jsii-calc-lib.submodule": { - "locationInModule": { - "filename": "lib/index.ts", - "line": 134, - }, - "readme": { - "markdown": "# Submodule Readme - -This is a submodule readme. -", - }, - "symbolId": "lib/submodule/index:", - "targets": { - "dotnet": { - "namespace": "Amazon.JSII.Tests.CustomSubmoduleName", - }, - "go": { - "packageName": "customsubmodulename", - }, - "java": { - "package": "software.amazon.jsii.tests.calculator.custom_submodule_name", - }, - "python": { - "module": "scope.jsii_calc_lib.custom_submodule_name", - }, - }, - }, - }, - "targets": { - "dotnet": { - "namespace": "Amazon.JSII.Tests.CalculatorNamespace.LibNamespace", - "packageId": "Amazon.JSII.Tests.CalculatorPackageId.LibPackageId", - "versionSuffix": "-devpreview", - }, - "go": { - "moduleName": "github.com/aws/jsii/jsii-calc/go", - "versionSuffix": "-devpreview", - }, - "java": { - "maven": { - "artifactId": "calculator-lib", - "groupId": "software.amazon.jsii.tests", - "versionSuffix": ".DEVPREVIEW", - }, - "package": "software.amazon.jsii.tests.calculator.lib", - }, - "js": { - "npm": "@scope/jsii-calc-lib", - }, - "python": { - "distName": "scope.jsii-calc-lib", - "module": "scope.jsii_calc_lib", - }, - }, - "types": { - "@scope/jsii-calc-lib.BaseFor2647": { - "assembly": "@scope/jsii-calc-lib", - "docs": { - "remarks": "The method \`foo\` has a parameter that uses a type -from a dependent module. Since Go "reimplments" this method, it will also need -to include an "import" statement for the calc-base module.", - "see": "https://github.com/aws/jsii/issues/2647", - "stability": "deprecated", - "summary": "A base class for testing #2647.", - }, - "fqn": "@scope/jsii-calc-lib.BaseFor2647", - "initializer": { - "docs": { - "stability": "deprecated", - }, - "locationInModule": { - "filename": "lib/index.ts", - "line": 122, - }, - "parameters": [ - { - "name": "very", - "type": { - "fqn": "@scope/jsii-calc-base-of-base.Very", - }, - }, - ], - }, - "kind": "class", - "locationInModule": { - "filename": "lib/index.ts", - "line": 121, - }, - "methods": [ - { - "docs": { - "stability": "deprecated", - }, - "locationInModule": { - "filename": "lib/index.ts", - "line": 126, - }, - "name": "foo", - "parameters": [ - { - "name": "obj", - "type": { - "fqn": "@scope/jsii-calc-base.IBaseInterface", - }, - }, - ], - }, - ], - "name": "BaseFor2647", - "symbolId": "lib/index:BaseFor2647", - }, - "@scope/jsii-calc-lib.DiamondLeft": { - "assembly": "@scope/jsii-calc-lib", - "datatype": true, - "docs": { - "stability": "deprecated", - }, - "fqn": "@scope/jsii-calc-lib.DiamondLeft", - "kind": "interface", - "locationInModule": { - "filename": "lib/duplicate-inherited-prop.ts", - "line": 13, - }, - "name": "DiamondLeft", - "properties": [ - { - "abstract": true, - "docs": { - "stability": "deprecated", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/duplicate-inherited-prop.ts", - "line": 10, - }, - "name": "hoistedTop", - "optional": true, - "type": { - "primitive": "string", - }, - }, - { - "abstract": true, - "docs": { - "stability": "deprecated", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/duplicate-inherited-prop.ts", - "line": 14, - }, - "name": "left", - "optional": true, - "type": { - "primitive": "number", - }, - }, - ], - "symbolId": "lib/duplicate-inherited-prop:DiamondLeft", - }, - "@scope/jsii-calc-lib.DiamondRight": { - "assembly": "@scope/jsii-calc-lib", - "datatype": true, - "docs": { - "stability": "deprecated", - }, - "fqn": "@scope/jsii-calc-lib.DiamondRight", - "kind": "interface", - "locationInModule": { - "filename": "lib/duplicate-inherited-prop.ts", - "line": 17, - }, - "name": "DiamondRight", - "properties": [ - { - "abstract": true, - "docs": { - "stability": "deprecated", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/duplicate-inherited-prop.ts", - "line": 10, - }, - "name": "hoistedTop", - "optional": true, - "type": { - "primitive": "string", - }, - }, - { - "abstract": true, - "docs": { - "stability": "deprecated", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/duplicate-inherited-prop.ts", - "line": 18, - }, - "name": "right", - "optional": true, - "type": { - "primitive": "boolean", - }, - }, - ], - "symbolId": "lib/duplicate-inherited-prop:DiamondRight", - }, - "@scope/jsii-calc-lib.EnumFromScopedModule": { - "assembly": "@scope/jsii-calc-lib", - "docs": { - "remarks": "See awslabs/jsii#138", - "stability": "deprecated", - "summary": "Check that enums from \\@scoped packages can be references.", - }, - "fqn": "@scope/jsii-calc-lib.EnumFromScopedModule", - "kind": "enum", - "locationInModule": { - "filename": "lib/index.ts", - "line": 99, - }, - "members": [ - { - "docs": { - "stability": "deprecated", - }, - "name": "VALUE1", - }, - { - "docs": { - "stability": "deprecated", - }, - "name": "VALUE2", - }, - ], - "name": "EnumFromScopedModule", - "symbolId": "lib/index:EnumFromScopedModule", - }, - "@scope/jsii-calc-lib.IDoublable": { - "assembly": "@scope/jsii-calc-lib", - "docs": { - "stability": "deprecated", - "summary": "The general contract for a concrete number.", - }, - "fqn": "@scope/jsii-calc-lib.IDoublable", - "kind": "interface", - "locationInModule": { - "filename": "lib/index.ts", - "line": 25, - }, - "name": "IDoublable", - "properties": [ - { - "abstract": true, - "docs": { - "stability": "deprecated", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/index.ts", - "line": 26, - }, - "name": "doubleValue", - "type": { - "primitive": "number", - }, - }, - ], - "symbolId": "lib/index:IDoublable", - }, - "@scope/jsii-calc-lib.IFriendly": { - "assembly": "@scope/jsii-calc-lib", - "docs": { - "remarks": "These classes can be greeted with -a "hello" or "goodbye" blessing and they will respond back in a fun and friendly manner.", - "stability": "deprecated", - "summary": "Applies to classes that are considered friendly.", - }, - "fqn": "@scope/jsii-calc-lib.IFriendly", - "kind": "interface", - "locationInModule": { - "filename": "lib/index.ts", - "line": 60, - }, - "methods": [ - { - "abstract": true, - "docs": { - "stability": "deprecated", - "summary": "Say hello!", - }, - "locationInModule": { - "filename": "lib/index.ts", - "line": 64, - }, - "name": "hello", - "returns": { - "type": { - "primitive": "string", - }, - }, - }, - ], - "name": "IFriendly", - "symbolId": "lib/index:IFriendly", - }, - "@scope/jsii-calc-lib.IThreeLevelsInterface": { - "assembly": "@scope/jsii-calc-lib", - "docs": { - "remarks": "Their presence validates that .NET/Java/jsii-reflect can track all fields -far enough up the tree.", - "stability": "deprecated", - "summary": "Interface that inherits from packages 2 levels up the tree.", - }, - "fqn": "@scope/jsii-calc-lib.IThreeLevelsInterface", - "interfaces": [ - "@scope/jsii-calc-base.IBaseInterface", - ], - "kind": "interface", - "locationInModule": { - "filename": "lib/index.ts", - "line": 110, - }, - "methods": [ - { - "abstract": true, - "docs": { - "stability": "deprecated", - }, - "locationInModule": { - "filename": "lib/index.ts", - "line": 111, - }, - "name": "baz", - }, - ], - "name": "IThreeLevelsInterface", - "symbolId": "lib/index:IThreeLevelsInterface", - }, - "@scope/jsii-calc-lib.MyFirstStruct": { - "assembly": "@scope/jsii-calc-lib", - "datatype": true, - "docs": { - "stability": "deprecated", - "summary": "This is the first struct we have created in jsii.", - }, - "fqn": "@scope/jsii-calc-lib.MyFirstStruct", - "kind": "interface", - "locationInModule": { - "filename": "lib/index.ts", - "line": 70, - }, - "name": "MyFirstStruct", - "properties": [ - { - "abstract": true, - "docs": { - "stability": "deprecated", - "summary": "An awesome number value.", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/index.ts", - "line": 79, - }, - "name": "anumber", - "type": { - "primitive": "number", - }, - }, - { - "abstract": true, - "docs": { - "stability": "deprecated", - "summary": "A string value.", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/index.ts", - "line": 74, - }, - "name": "astring", - "type": { - "primitive": "string", - }, - }, - { - "abstract": true, - "docs": { - "stability": "deprecated", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/index.ts", - "line": 80, - }, - "name": "firstOptional", - "optional": true, - "type": { - "collection": { - "elementtype": { - "primitive": "string", - }, - "kind": "array", - }, - }, - }, - ], - "symbolId": "lib/index:MyFirstStruct", - }, - "@scope/jsii-calc-lib.Number": { - "assembly": "@scope/jsii-calc-lib", - "base": "@scope/jsii-calc-lib.NumericValue", - "docs": { - "stability": "deprecated", - "summary": "Represents a concrete number.", - }, - "fqn": "@scope/jsii-calc-lib.Number", - "initializer": { - "docs": { - "stability": "deprecated", - "summary": "Creates a Number object.", - }, - "locationInModule": { - "filename": "lib/index.ts", - "line": 37, - }, - "parameters": [ - { - "docs": { - "summary": "The number.", - }, - "name": "value", - "type": { - "primitive": "number", - }, - }, - ], - }, - "interfaces": [ - "@scope/jsii-calc-lib.IDoublable", - ], - "kind": "class", - "locationInModule": { - "filename": "lib/index.ts", - "line": 32, - }, - "name": "Number", - "properties": [ - { - "docs": { - "stability": "deprecated", - "summary": "The number multiplied by 2.", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/index.ts", - "line": 44, - }, - "name": "doubleValue", - "overrides": "@scope/jsii-calc-lib.IDoublable", - "type": { - "primitive": "number", - }, - }, - { - "docs": { - "stability": "deprecated", - "summary": "The number.", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/index.ts", - "line": 37, - }, - "name": "value", - "overrides": "@scope/jsii-calc-lib.NumericValue", - "type": { - "primitive": "number", - }, - }, - ], - "symbolId": "lib/index:Number", - }, - "@scope/jsii-calc-lib.NumericValue": { - "abstract": true, - "assembly": "@scope/jsii-calc-lib", - "base": "@scope/jsii-calc-base.Base", - "docs": { - "stability": "deprecated", - "summary": "Abstract class which represents a numeric value.", - }, - "fqn": "@scope/jsii-calc-lib.NumericValue", - "initializer": {}, - "kind": "class", - "locationInModule": { - "filename": "lib/index.ts", - "line": 8, - }, - "methods": [ - { - "docs": { - "stability": "deprecated", - "summary": "String representation of the value.", - }, - "locationInModule": { - "filename": "lib/index.ts", - "line": 17, - }, - "name": "toString", - "returns": { - "type": { - "primitive": "string", - }, - }, - }, - ], - "name": "NumericValue", - "properties": [ - { - "abstract": true, - "docs": { - "stability": "deprecated", - "summary": "The value.", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/index.ts", - "line": 12, - }, - "name": "value", - "type": { - "primitive": "number", - }, - }, - ], - "symbolId": "lib/index:NumericValue", - }, - "@scope/jsii-calc-lib.Operation": { - "abstract": true, - "assembly": "@scope/jsii-calc-lib", - "base": "@scope/jsii-calc-lib.NumericValue", - "docs": { - "stability": "deprecated", - "summary": "Represents an operation on values.", - }, - "fqn": "@scope/jsii-calc-lib.Operation", - "initializer": {}, - "kind": "class", - "locationInModule": { - "filename": "lib/index.ts", - "line": 52, - }, - "methods": [ - { - "abstract": true, - "docs": { - "stability": "deprecated", - "summary": "String representation of the value.", - }, - "locationInModule": { - "filename": "lib/index.ts", - "line": 53, - }, - "name": "toString", - "overrides": "@scope/jsii-calc-lib.NumericValue", - "returns": { - "type": { - "primitive": "string", - }, - }, - }, - ], - "name": "Operation", - "symbolId": "lib/index:Operation", - }, - "@scope/jsii-calc-lib.StructWithOnlyOptionals": { - "assembly": "@scope/jsii-calc-lib", - "datatype": true, - "docs": { - "stability": "deprecated", - "summary": "This is a struct with only optional properties.", - }, - "fqn": "@scope/jsii-calc-lib.StructWithOnlyOptionals", - "kind": "interface", - "locationInModule": { - "filename": "lib/index.ts", - "line": 86, - }, - "name": "StructWithOnlyOptionals", - "properties": [ - { - "abstract": true, - "docs": { - "stability": "deprecated", - "summary": "The first optional!", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/index.ts", - "line": 90, - }, - "name": "optional1", - "optional": true, - "type": { - "primitive": "string", - }, - }, - { - "abstract": true, - "docs": { - "stability": "deprecated", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/index.ts", - "line": 91, - }, - "name": "optional2", - "optional": true, - "type": { - "primitive": "number", - }, - }, - { - "abstract": true, - "docs": { - "stability": "deprecated", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/index.ts", - "line": 92, - }, - "name": "optional3", - "optional": true, - "type": { - "primitive": "boolean", - }, - }, - ], - "symbolId": "lib/index:StructWithOnlyOptionals", - }, - "@scope/jsii-calc-lib.deprecationRemoval.IInterface": { - "assembly": "@scope/jsii-calc-lib", - "docs": { - "stability": "deprecated", - }, - "fqn": "@scope/jsii-calc-lib.deprecationRemoval.IInterface", - "kind": "interface", - "locationInModule": { - "filename": "lib/deprecation-removal.ts", - "line": 1, - }, - "methods": [ - { - "abstract": true, - "docs": { - "stability": "deprecated", - }, - "locationInModule": { - "filename": "lib/deprecation-removal.ts", - "line": 2, - }, - "name": "method", - }, - ], - "name": "IInterface", - "namespace": "deprecationRemoval", - "symbolId": "lib/deprecation-removal:IInterface", - }, - "@scope/jsii-calc-lib.deprecationRemoval.InterfaceFactory": { - "assembly": "@scope/jsii-calc-lib", - "docs": { - "stability": "deprecated", - }, - "fqn": "@scope/jsii-calc-lib.deprecationRemoval.InterfaceFactory", - "kind": "class", - "locationInModule": { - "filename": "lib/deprecation-removal.ts", - "line": 10, - }, - "methods": [ - { - "docs": { - "stability": "deprecated", - }, - "locationInModule": { - "filename": "lib/deprecation-removal.ts", - "line": 11, - }, - "name": "create", - "returns": { - "type": { - "fqn": "@scope/jsii-calc-lib.deprecationRemoval.IInterface", - }, - }, - "static": true, - }, - ], - "name": "InterfaceFactory", - "namespace": "deprecationRemoval", - "symbolId": "lib/deprecation-removal:InterfaceFactory", - }, - "@scope/jsii-calc-lib.submodule.IReflectable": { - "assembly": "@scope/jsii-calc-lib", - "docs": { - "stability": "deprecated", - }, - "fqn": "@scope/jsii-calc-lib.submodule.IReflectable", - "kind": "interface", - "locationInModule": { - "filename": "lib/submodule/index.ts", - "line": 1, - }, - "name": "IReflectable", - "namespace": "submodule", - "properties": [ - { - "abstract": true, - "docs": { - "stability": "deprecated", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/submodule/index.ts", - "line": 2, - }, - "name": "entries", - "type": { - "collection": { - "elementtype": { - "fqn": "@scope/jsii-calc-lib.submodule.ReflectableEntry", - }, - "kind": "array", - }, - }, - }, - ], - "symbolId": "lib/submodule/index:IReflectable", - }, - "@scope/jsii-calc-lib.submodule.NestingClass": { - "assembly": "@scope/jsii-calc-lib", - "docs": { - "stability": "deprecated", - "summary": "This class is here to show we can use nested classes across module boundaries.", - }, - "fqn": "@scope/jsii-calc-lib.submodule.NestingClass", - "kind": "class", - "locationInModule": { - "filename": "lib/submodule/index.ts", - "line": 22, - }, - "name": "NestingClass", - "namespace": "submodule", - "symbolId": "lib/submodule/index:NestingClass", - }, - "@scope/jsii-calc-lib.submodule.NestingClass.NestedClass": { - "assembly": "@scope/jsii-calc-lib", - "docs": { - "stability": "deprecated", - "summary": "This class is here to show we can use nested classes across module boundaries.", - }, - "fqn": "@scope/jsii-calc-lib.submodule.NestingClass.NestedClass", - "initializer": { - "docs": { - "stability": "deprecated", - }, - }, - "kind": "class", - "locationInModule": { - "filename": "lib/submodule/index.ts", - "line": 30, - }, - "name": "NestedClass", - "namespace": "submodule.NestingClass", - "properties": [ - { - "docs": { - "stability": "deprecated", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/submodule/index.ts", - "line": 31, - }, - "name": "property", - "type": { - "primitive": "string", - }, - }, - ], - "symbolId": "lib/submodule/index:NestingClass.NestedClass", - }, - "@scope/jsii-calc-lib.submodule.NestingClass.NestedStruct": { - "assembly": "@scope/jsii-calc-lib", - "datatype": true, - "docs": { - "remarks": "Normal.", - "stability": "deprecated", - "summary": "This is a struct, nested within a class.", - }, - "fqn": "@scope/jsii-calc-lib.submodule.NestingClass.NestedStruct", - "kind": "interface", - "locationInModule": { - "filename": "lib/submodule/index.ts", - "line": 37, - }, - "name": "NestedStruct", - "namespace": "submodule.NestingClass", - "properties": [ - { - "abstract": true, - "docs": { - "stability": "deprecated", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/submodule/index.ts", - "line": 38, - }, - "name": "name", - "type": { - "primitive": "string", - }, - }, - ], - "symbolId": "lib/submodule/index:NestingClass.NestedStruct", - }, - "@scope/jsii-calc-lib.submodule.ReflectableEntry": { - "assembly": "@scope/jsii-calc-lib", - "datatype": true, - "docs": { - "stability": "deprecated", - }, - "fqn": "@scope/jsii-calc-lib.submodule.ReflectableEntry", - "kind": "interface", - "locationInModule": { - "filename": "lib/submodule/index.ts", - "line": 5, - }, - "name": "ReflectableEntry", - "namespace": "submodule", - "properties": [ - { - "abstract": true, - "docs": { - "stability": "deprecated", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/submodule/index.ts", - "line": 6, - }, - "name": "key", - "type": { - "primitive": "string", - }, - }, - { - "abstract": true, - "docs": { - "stability": "deprecated", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/submodule/index.ts", - "line": 7, - }, - "name": "value", - "type": { - "primitive": "any", - }, - }, - ], - "symbolId": "lib/submodule/index:ReflectableEntry", - }, - "@scope/jsii-calc-lib.submodule.Reflector": { - "assembly": "@scope/jsii-calc-lib", - "docs": { - "stability": "deprecated", - }, - "fqn": "@scope/jsii-calc-lib.submodule.Reflector", - "initializer": { - "docs": { - "stability": "deprecated", - }, - }, - "kind": "class", - "locationInModule": { - "filename": "lib/submodule/index.ts", - "line": 10, - }, - "methods": [ - { - "docs": { - "stability": "deprecated", - }, - "locationInModule": { - "filename": "lib/submodule/index.ts", - "line": 11, - }, - "name": "asMap", - "parameters": [ - { - "name": "reflectable", - "type": { - "fqn": "@scope/jsii-calc-lib.submodule.IReflectable", - }, - }, - ], - "returns": { - "type": { - "collection": { - "elementtype": { - "primitive": "any", - }, - "kind": "map", - }, - }, - }, - }, - ], - "name": "Reflector", - "namespace": "submodule", - "symbolId": "lib/submodule/index:Reflector", - }, - }, - "version": "0.0.0", -} -`; - -exports[`integration test: jsii-calc 1`] = ` -{ - "author": { - "name": "Amazon Web Services", - "organization": true, - "roles": [ - "author", - ], - "url": "https://aws.amazon.com", - }, - "bin": { - "calc": "bin/run", - }, - "bundled": { - "@fixtures/jsii-calc-bundled": "^0.19.0", - }, - "contributors": [ - { - "name": "Elad Ben-Israel", - "roles": [ - "maintainer", - ], - "url": "https://github.com/eladb", - }, - { - "name": "Rico Huijbers", - "roles": [ - "maintainer", - ], - "url": "https://github.com/rix0rrr", - }, - { - "name": "Romain Marcadier-Muller", - "roles": [ - "maintainer", - ], - "url": "https://github.com/RomainMuller", - }, - ], - "dependencies": { - "@scope/jsii-calc-base": "^0.0.0", - "@scope/jsii-calc-lib": "^0.0.0", - }, - "dependencyClosure": { - "@scope/jsii-calc-base": { - "submodules": { - "@scope/jsii-calc-base.deep": {}, - }, - "targets": { - "dotnet": { - "iconUrl": "https://raw.githubusercontent.com/aws/aws-cdk/main/logo/default-256-dark.png", - "namespace": "Amazon.JSII.Tests.CalculatorNamespace.BaseNamespace", - "packageId": "Amazon.JSII.Tests.CalculatorPackageId.BasePackageId", - }, - "go": { - "moduleName": "github.com/aws/jsii/jsii-calc/go", - "packageName": "jcb", - }, - "java": { - "maven": { - "artifactId": "calculator-base", - "groupId": "software.amazon.jsii.tests", - }, - "package": "software.amazon.jsii.tests.calculator.base", - }, - "js": { - "npm": "@scope/jsii-calc-base", - }, - "python": { - "distName": "scope.jsii-calc-base", - "module": "scope.jsii_calc_base", - }, - }, - }, - "@scope/jsii-calc-base-of-base": { - "targets": { - "dotnet": { - "namespace": "Amazon.JSII.Tests.CalculatorNamespace.BaseOfBaseNamespace", - "packageId": "Amazon.JSII.Tests.CalculatorPackageId.BaseOfBasePackageId", - }, - "go": { - "moduleName": "github.com/aws/jsii/jsii-calc/go", - }, - "java": { - "maven": { - "artifactId": "calculator-base-of-base", - "groupId": "software.amazon.jsii.tests", - }, - "package": "software.amazon.jsii.tests.calculator.baseofbase", - }, - "js": { - "npm": "@scope/jsii-calc-base-of-base", - }, - "python": { - "distName": "scope.jsii-calc-base-of-base", - "module": "scope.jsii_calc_base_of_base", - }, - }, - }, - "@scope/jsii-calc-lib": { - "submodules": { - "@scope/jsii-calc-lib.deprecationRemoval": {}, - "@scope/jsii-calc-lib.submodule": { - "targets": { - "dotnet": { - "namespace": "Amazon.JSII.Tests.CustomSubmoduleName", - }, - "go": { - "packageName": "customsubmodulename", - }, - "java": { - "package": "software.amazon.jsii.tests.calculator.custom_submodule_name", - }, - "python": { - "module": "scope.jsii_calc_lib.custom_submodule_name", - }, - }, - }, - }, - "targets": { - "dotnet": { - "namespace": "Amazon.JSII.Tests.CalculatorNamespace.LibNamespace", - "packageId": "Amazon.JSII.Tests.CalculatorPackageId.LibPackageId", - "versionSuffix": "-devpreview", - }, - "go": { - "moduleName": "github.com/aws/jsii/jsii-calc/go", - "versionSuffix": "-devpreview", - }, - "java": { - "maven": { - "artifactId": "calculator-lib", - "groupId": "software.amazon.jsii.tests", - "versionSuffix": ".DEVPREVIEW", - }, - "package": "software.amazon.jsii.tests.calculator.lib", - }, - "js": { - "npm": "@scope/jsii-calc-lib", - }, - "python": { - "distName": "scope.jsii-calc-lib", - "module": "scope.jsii_calc_lib", - }, - }, - }, - }, - "description": "A simple calcuator built on JSII.", - "docs": { - "stability": "stable", - }, - "fingerprint": Any, - "homepage": "https://github.com/aws/jsii", - "jsiiVersion": Any, - "keywords": [ - "aws", - "jsii", - "test", - ], - "license": "Apache-2.0", - "metadata": { - "jsii": { - "compiledWithDeprecationWarnings": true, - "pacmak": { - "hasDefaultInterfaces": true, - }, - "rosetta": { - "strict": true, - }, - }, - "jsii:boolean": true, - "jsii:number": 1337, - "jsii:object": { - "string": "yes!", - }, - }, - "name": "jsii-calc", - "readme": { - "markdown": "# jsii Calculator - -This library is used to demonstrate and test the features of JSII - -## How to use running sum API: - -First, create a calculator: - -\`\`\`ts -const calculator = new calc.Calculator(); -\`\`\` - -Then call some operations: - - -\`\`\`ts fixture=with-calculator -calculator.add(10); -\`\`\` - -## Code Samples - -\`\`\`ts -/* This is totes a magic comment in here, just you wait! */ -const foo = 'bar'; -\`\`\` -", - }, - "repository": { - "directory": "packages/jsii-calc", - "type": "git", - "url": "https://github.com/aws/jsii.git", - }, - "schema": "jsii/0.10.0", - "submodules": { - "jsii-calc.DerivedClassHasNoProperties": { - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 325, - }, - "symbolId": "lib/compliance:DerivedClassHasNoProperties", - }, - "jsii-calc.InterfaceInNamespaceIncludesClasses": { - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1262, - }, - "symbolId": "lib/compliance:InterfaceInNamespaceIncludesClasses", - }, - "jsii-calc.InterfaceInNamespaceOnlyInterface": { - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1255, - }, - "symbolId": "lib/compliance:InterfaceInNamespaceOnlyInterface", - }, - "jsii-calc.PythonSelf": { - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1146, - }, - "symbolId": "lib/compliance:PythonSelf", - }, - "jsii-calc.anonymous": { - "locationInModule": { - "filename": "lib/index.ts", - "line": 29, - }, - "symbolId": "lib/anonymous/index:", - }, - "jsii-calc.cdk16625": { - "locationInModule": { - "filename": "lib/index.ts", - "line": 25, - }, - "symbolId": "lib/cdk16625/index:", - }, - "jsii-calc.cdk16625.donotimport": { - "locationInModule": { - "filename": "lib/cdk16625/index.ts", - "line": 6, - }, - "symbolId": "lib/cdk16625/donotimport/index:", - }, - "jsii-calc.cdk22369": { - "locationInModule": { - "filename": "lib/index.ts", - "line": 26, - }, - "symbolId": "lib/cdk22369/index:", - }, - "jsii-calc.composition": { - "locationInModule": { - "filename": "lib/calculator.ts", - "line": 143, - }, - "symbolId": "lib/calculator:composition", - }, - "jsii-calc.homonymousForwardReferences": { - "locationInModule": { - "filename": "lib/index.ts", - "line": 31, - }, - "readme": { - "markdown": "Verifies homonymous forward references don't trip the Python type checker - -This has been an issue when stub functions were introduced to create a reliable source for type checking -information, which was reported in https://github.com/aws/jsii/issues/3818. -", - }, - "symbolId": "lib/homonymous/index:", - }, - "jsii-calc.homonymousForwardReferences.bar": { - "locationInModule": { - "filename": "lib/homonymous/index.ts", - "line": 1, - }, - "symbolId": "lib/homonymous/bar:", - }, - "jsii-calc.homonymousForwardReferences.foo": { - "locationInModule": { - "filename": "lib/homonymous/index.ts", - "line": 2, - }, - "symbolId": "lib/homonymous/foo:", - }, - "jsii-calc.jsii3656": { - "locationInModule": { - "filename": "lib/index.ts", - "line": 27, - }, - "symbolId": "lib/jsii3656/index:", - }, - "jsii-calc.module2530": { - "locationInModule": { - "filename": "lib/index.ts", - "line": 22, - }, - "symbolId": "lib/module2530/index:", - }, - "jsii-calc.module2617": { - "locationInModule": { - "filename": "lib/index.ts", - "line": 18, - }, - "symbolId": "lib/module2617/index:", - }, - "jsii-calc.module2647": { - "locationInModule": { - "filename": "lib/index.ts", - "line": 17, - }, - "symbolId": "lib/module2647/index:", - }, - "jsii-calc.module2689": { - "locationInModule": { - "filename": "lib/index.ts", - "line": 19, - }, - "symbolId": "lib/module2689/index:", - }, - "jsii-calc.module2689.methods": { - "locationInModule": { - "filename": "lib/module2689/index.ts", - "line": 8, - }, - "symbolId": "lib/module2689/methods/index:", - }, - "jsii-calc.module2689.props": { - "locationInModule": { - "filename": "lib/module2689/index.ts", - "line": 9, - }, - "symbolId": "lib/module2689/props/index:", - }, - "jsii-calc.module2689.retval": { - "locationInModule": { - "filename": "lib/module2689/index.ts", - "line": 10, - }, - "symbolId": "lib/module2689/retval/index:", - }, - "jsii-calc.module2689.structs": { - "locationInModule": { - "filename": "lib/module2689/index.ts", - "line": 7, - }, - "symbolId": "lib/module2689/structs/index:", - }, - "jsii-calc.module2692": { - "locationInModule": { - "filename": "lib/index.ts", - "line": 21, - }, - "symbolId": "lib/module2692/index:", - }, - "jsii-calc.module2692.submodule1": { - "locationInModule": { - "filename": "lib/module2692/index.ts", - "line": 1, - }, - "symbolId": "lib/module2692/submodule1/index:", - }, - "jsii-calc.module2692.submodule2": { - "locationInModule": { - "filename": "lib/module2692/index.ts", - "line": 2, - }, - "symbolId": "lib/module2692/submodule2/index:", - }, - "jsii-calc.module2700": { - "locationInModule": { - "filename": "lib/index.ts", - "line": 23, - }, - "symbolId": "lib/module2700/index:", - }, - "jsii-calc.module2702": { - "locationInModule": { - "filename": "lib/index.ts", - "line": 20, - }, - "symbolId": "lib/module2702/index:", - }, - "jsii-calc.nodirect": { - "locationInModule": { - "filename": "lib/index.ts", - "line": 16, - }, - "symbolId": "lib/no-direct-types/index:", - }, - "jsii-calc.nodirect.sub1": { - "locationInModule": { - "filename": "lib/no-direct-types/index.ts", - "line": 3, - }, - "symbolId": "lib/no-direct-types/sub1/index:", - }, - "jsii-calc.nodirect.sub2": { - "locationInModule": { - "filename": "lib/no-direct-types/index.ts", - "line": 4, - }, - "symbolId": "lib/no-direct-types/sub2/index:", - }, - "jsii-calc.onlystatic": { - "locationInModule": { - "filename": "lib/index.ts", - "line": 15, - }, - "symbolId": "lib/only-static/index:", - }, - "jsii-calc.submodule": { - "locationInModule": { - "filename": "lib/index.ts", - "line": 14, - }, - "readme": { - "markdown": "Read you, read me -================= - -This is the readme of the \`jsii-calc.submodule\` module. -", - }, - "symbolId": "lib/submodule/index:", - }, - "jsii-calc.submodule.back_references": { - "locationInModule": { - "filename": "lib/submodule/index.ts", - "line": 7, - }, - "symbolId": "lib/submodule/refers-to-parent/index:", - }, - "jsii-calc.submodule.child": { - "locationInModule": { - "filename": "lib/submodule/index.ts", - "line": 1, - }, - "symbolId": "lib/submodule/child/index:", - }, - "jsii-calc.submodule.isolated": { - "locationInModule": { - "filename": "lib/submodule/index.ts", - "line": 2, - }, - "readme": { - "markdown": "Read you, read me -================= - -This is the readme of the \`jsii-calc.submodule.isolated\` module. -", - }, - "symbolId": "lib/submodule/isolated:", - }, - "jsii-calc.submodule.nested_submodule": { - "locationInModule": { - "filename": "lib/submodule/nested_submodule.ts", - "line": 4, - }, - "symbolId": "lib/submodule/nested_submodule:nested_submodule", - }, - "jsii-calc.submodule.nested_submodule.deeplyNested": { - "locationInModule": { - "filename": "lib/submodule/nested_submodule.ts", - "line": 6, - }, - "symbolId": "lib/submodule/nested_submodule:nested_submodule.deeplyNested", - }, - "jsii-calc.submodule.param": { - "locationInModule": { - "filename": "lib/submodule/index.ts", - "line": 3, - }, - "symbolId": "lib/submodule/param/index:", - }, - "jsii-calc.submodule.returnsparam": { - "locationInModule": { - "filename": "lib/submodule/index.ts", - "line": 4, - }, - "symbolId": "lib/submodule/returns-param/index:", - }, - "jsii-calc.union": { - "locationInModule": { - "filename": "lib/index.ts", - "line": 30, - }, - "symbolId": "lib/union:", - }, - }, - "targets": { - "dotnet": { - "iconUrl": "https://sdk-for-net.amazonwebservices.com/images/AWSLogo128x128.png", - "namespace": "Amazon.JSII.Tests.CalculatorNamespace", - "packageId": "Amazon.JSII.Tests.CalculatorPackageId", - }, - "go": { - "moduleName": "github.com/aws/jsii/jsii-calc/go", - }, - "java": { - "maven": { - "artifactId": "calculator", - "groupId": "software.amazon.jsii.tests", - }, - "package": "software.amazon.jsii.tests.calculator", - }, - "js": { - "npm": "jsii-calc", - }, - "python": { - "classifiers": [ - "Test :: Classifier :: Is Dummy", - ], - "distName": "jsii-calc", - "module": "jsii_calc", - }, - }, - "types": { - "jsii-calc.AbstractClass": { - "abstract": true, - "assembly": "jsii-calc", - "base": "jsii-calc.AbstractClassBase", - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.AbstractClass", - "initializer": { - "docs": { - "stability": "stable", - }, - }, - "interfaces": [ - "jsii-calc.IInterfaceImplementedByAbstractClass", - ], - "kind": "class", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1306, - }, - "methods": [ - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1314, - }, - "name": "abstractMethod", - "parameters": [ - { - "name": "name", - "type": { - "primitive": "string", - }, - }, - ], - "returns": { - "type": { - "primitive": "string", - }, - }, - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1310, - }, - "name": "nonAbstractMethod", - "returns": { - "type": { - "primitive": "number", - }, - }, - }, - ], - "name": "AbstractClass", - "properties": [ - { - "docs": { - "stability": "stable", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1316, - }, - "name": "propFromInterface", - "overrides": "jsii-calc.IInterfaceImplementedByAbstractClass", - "type": { - "primitive": "string", - }, - }, - ], - "symbolId": "lib/compliance:AbstractClass", - }, - "jsii-calc.AbstractClassBase": { - "abstract": true, - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.AbstractClassBase", - "initializer": { - "docs": { - "stability": "stable", - }, - }, - "kind": "class", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1302, - }, - "name": "AbstractClassBase", - "properties": [ - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1303, - }, - "name": "abstractProperty", - "type": { - "primitive": "string", - }, - }, - ], - "symbolId": "lib/compliance:AbstractClassBase", - }, - "jsii-calc.AbstractClassReturner": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.AbstractClassReturner", - "initializer": { - "docs": { - "stability": "stable", - }, - }, - "kind": "class", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1331, - }, - "methods": [ - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1332, - }, - "name": "giveMeAbstract", - "returns": { - "type": { - "fqn": "jsii-calc.AbstractClass", - }, - }, - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1336, - }, - "name": "giveMeInterface", - "returns": { - "type": { - "fqn": "jsii-calc.IInterfaceImplementedByAbstractClass", - }, - }, - }, - ], - "name": "AbstractClassReturner", - "properties": [ - { - "docs": { - "stability": "stable", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1340, - }, - "name": "returnAbstractFromProperty", - "type": { - "fqn": "jsii-calc.AbstractClassBase", - }, - }, - ], - "symbolId": "lib/compliance:AbstractClassReturner", - }, - "jsii-calc.AbstractSuite": { - "abstract": true, - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - "summary": "Ensures abstract members implementations correctly register overrides in various languages.", - }, - "fqn": "jsii-calc.AbstractSuite", - "initializer": { - "docs": { - "stability": "stable", - }, - }, - "kind": "class", - "locationInModule": { - "filename": "lib/calculator.ts", - "line": 423, - }, - "methods": [ - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/calculator.ts", - "line": 425, - }, - "name": "someMethod", - "parameters": [ - { - "name": "str", - "type": { - "primitive": "string", - }, - }, - ], - "protected": true, - "returns": { - "type": { - "primitive": "string", - }, - }, - }, - { - "docs": { - "stability": "stable", - "summary": "Sets \`seed\` to \`this.property\`, then calls \`someMethod\` with \`this.property\` and returns the result.", - }, - "locationInModule": { - "filename": "lib/calculator.ts", - "line": 431, - }, - "name": "workItAll", - "parameters": [ - { - "docs": { - "summary": "a \`string\`.", - }, - "name": "seed", - "type": { - "primitive": "string", - }, - }, - ], - "returns": { - "type": { - "primitive": "string", - }, - }, - }, - ], - "name": "AbstractSuite", - "properties": [ - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/calculator.ts", - "line": 424, - }, - "name": "property", - "protected": true, - "type": { - "primitive": "string", - }, - }, - ], - "symbolId": "lib/calculator:AbstractSuite", - }, - "jsii-calc.Add": { - "assembly": "jsii-calc", - "base": "jsii-calc.BinaryOperation", - "docs": { - "stability": "stable", - "summary": "The "+" binary operation.", - }, - "fqn": "jsii-calc.Add", - "initializer": { - "docs": { - "stability": "stable", - "summary": "Creates a BinaryOperation.", - }, - "locationInModule": { - "filename": "lib/calculator.ts", - "line": 53, - }, - "parameters": [ - { - "docs": { - "summary": "Left-hand side operand.", - }, - "name": "lhs", - "type": { - "fqn": "@scope/jsii-calc-lib.NumericValue", - }, - }, - { - "docs": { - "summary": "Right-hand side operand.", - }, - "name": "rhs", - "type": { - "fqn": "@scope/jsii-calc-lib.NumericValue", - }, - }, - ], - }, - "kind": "class", - "locationInModule": { - "filename": "lib/calculator.ts", - "line": 68, - }, - "methods": [ - { - "docs": { - "stability": "stable", - "summary": "String representation of the value.", - }, - "locationInModule": { - "filename": "lib/calculator.ts", - "line": 73, - }, - "name": "toString", - "overrides": "@scope/jsii-calc-lib.Operation", - "returns": { - "type": { - "primitive": "string", - }, - }, - }, - ], - "name": "Add", - "properties": [ - { - "docs": { - "stability": "stable", - "summary": "The value.", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/calculator.ts", - "line": 69, - }, - "name": "value", - "overrides": "@scope/jsii-calc-lib.NumericValue", - "type": { - "primitive": "number", - }, - }, - ], - "symbolId": "lib/calculator:Add", - }, - "jsii-calc.AllTypes": { - "assembly": "jsii-calc", - "docs": { - "remarks": "The setters will validate -that the value set is of the expected type and throw otherwise.", - "stability": "stable", - "summary": "This class includes property for all types supported by jsii.", - }, - "fqn": "jsii-calc.AllTypes", - "initializer": { - "docs": { - "stability": "stable", - }, - }, - "kind": "class", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 63, - }, - "methods": [ - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 232, - }, - "name": "anyIn", - "parameters": [ - { - "name": "inp", - "type": { - "primitive": "any", - }, - }, - ], - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 224, - }, - "name": "anyOut", - "returns": { - "type": { - "primitive": "any", - }, - }, - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 220, - }, - "name": "enumMethod", - "parameters": [ - { - "name": "value", - "type": { - "fqn": "jsii-calc.StringEnum", - }, - }, - ], - "returns": { - "type": { - "fqn": "jsii-calc.StringEnum", - }, - }, - }, - ], - "name": "AllTypes", - "properties": [ - { - "docs": { - "stability": "stable", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 216, - }, - "name": "enumPropertyValue", - "type": { - "primitive": "number", - }, - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 180, - }, - "name": "anyArrayProperty", - "type": { - "collection": { - "elementtype": { - "primitive": "any", - }, - "kind": "array", - }, - }, - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 181, - }, - "name": "anyMapProperty", - "type": { - "collection": { - "elementtype": { - "primitive": "any", - }, - "kind": "map", - }, - }, - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 179, - }, - "name": "anyProperty", - "type": { - "primitive": "any", - }, - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 165, - }, - "name": "arrayProperty", - "type": { - "collection": { - "elementtype": { - "primitive": "string", - }, - "kind": "array", - }, - }, - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 68, - }, - "name": "booleanProperty", - "type": { - "primitive": "boolean", - }, - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 114, - }, - "name": "dateProperty", - "type": { - "primitive": "date", - }, - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 200, - }, - "name": "enumProperty", - "type": { - "fqn": "jsii-calc.AllTypesEnum", - }, - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 133, - }, - "name": "jsonProperty", - "type": { - "primitive": "json", - }, - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 150, - }, - "name": "mapProperty", - "type": { - "collection": { - "elementtype": { - "fqn": "@scope/jsii-calc-lib.Number", - }, - "kind": "map", - }, - }, - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 99, - }, - "name": "numberProperty", - "type": { - "primitive": "number", - }, - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 83, - }, - "name": "stringProperty", - "type": { - "primitive": "string", - }, - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 192, - }, - "name": "unionArrayProperty", - "type": { - "collection": { - "elementtype": { - "union": { - "types": [ - { - "primitive": "number", - }, - { - "fqn": "@scope/jsii-calc-lib.NumericValue", - }, - ], - }, - }, - "kind": "array", - }, - }, - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 193, - }, - "name": "unionMapProperty", - "type": { - "collection": { - "elementtype": { - "union": { - "types": [ - { - "primitive": "string", - }, - { - "primitive": "number", - }, - { - "fqn": "@scope/jsii-calc-lib.Number", - }, - ], - }, - }, - "kind": "map", - }, - }, - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 191, - }, - "name": "unionProperty", - "type": { - "union": { - "types": [ - { - "primitive": "string", - }, - { - "primitive": "number", - }, - { - "fqn": "jsii-calc.Multiply", - }, - { - "fqn": "@scope/jsii-calc-lib.Number", - }, - ], - }, - }, - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 186, - }, - "name": "unknownArrayProperty", - "type": { - "collection": { - "elementtype": { - "primitive": "any", - }, - "kind": "array", - }, - }, - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 187, - }, - "name": "unknownMapProperty", - "type": { - "collection": { - "elementtype": { - "primitive": "any", - }, - "kind": "map", - }, - }, - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 185, - }, - "name": "unknownProperty", - "type": { - "primitive": "any", - }, - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 197, - }, - "name": "optionalEnumValue", - "optional": true, - "type": { - "fqn": "jsii-calc.StringEnum", - }, - }, - ], - "symbolId": "lib/compliance:AllTypes", - }, - "jsii-calc.AllTypesEnum": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.AllTypesEnum", - "kind": "enum", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 33, - }, - "members": [ - { - "docs": { - "stability": "stable", - }, - "name": "MY_ENUM_VALUE", - }, - { - "docs": { - "stability": "stable", - }, - "name": "YOUR_ENUM_VALUE", - }, - { - "docs": { - "stability": "stable", - }, - "name": "THIS_IS_GREAT", - }, - ], - "name": "AllTypesEnum", - "symbolId": "lib/compliance:AllTypesEnum", - }, - "jsii-calc.AllowedMethodNames": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.AllowedMethodNames", - "initializer": { - "docs": { - "stability": "stable", - }, - }, - "kind": "class", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 615, - }, - "methods": [ - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 623, - }, - "name": "getBar", - "parameters": [ - { - "name": "_p1", - "type": { - "primitive": "string", - }, - }, - { - "name": "_p2", - "type": { - "primitive": "number", - }, - }, - ], - }, - { - "docs": { - "stability": "stable", - "summary": "getXxx() is not allowed (see negatives), but getXxx(a, ...) is okay.", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 619, - }, - "name": "getFoo", - "parameters": [ - { - "name": "withParam", - "type": { - "primitive": "string", - }, - }, - ], - "returns": { - "type": { - "primitive": "string", - }, - }, - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 634, - }, - "name": "setBar", - "parameters": [ - { - "name": "_x", - "type": { - "primitive": "string", - }, - }, - { - "name": "_y", - "type": { - "primitive": "number", - }, - }, - { - "name": "_z", - "type": { - "primitive": "boolean", - }, - }, - ], - }, - { - "docs": { - "stability": "stable", - "summary": "setFoo(x) is not allowed (see negatives), but setXxx(a, b, ...) is okay.", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 630, - }, - "name": "setFoo", - "parameters": [ - { - "name": "_x", - "type": { - "primitive": "string", - }, - }, - { - "name": "_y", - "type": { - "primitive": "number", - }, - }, - ], - }, - ], - "name": "AllowedMethodNames", - "symbolId": "lib/compliance:AllowedMethodNames", - }, - "jsii-calc.AmbiguousParameters": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.AmbiguousParameters", - "initializer": { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2761, - }, - "parameters": [ - { - "name": "scope", - "type": { - "fqn": "jsii-calc.Bell", - }, - }, - { - "name": "props", - "type": { - "fqn": "jsii-calc.StructParameterType", - }, - }, - ], - }, - "kind": "class", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2760, - }, - "name": "AmbiguousParameters", - "properties": [ - { - "docs": { - "stability": "stable", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2763, - }, - "name": "props", - "type": { - "fqn": "jsii-calc.StructParameterType", - }, - }, - { - "docs": { - "stability": "stable", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2762, - }, - "name": "scope", - "type": { - "fqn": "jsii-calc.Bell", - }, - }, - ], - "symbolId": "lib/compliance:AmbiguousParameters", - }, - "jsii-calc.AnonymousImplementationProvider": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.AnonymousImplementationProvider", - "initializer": { - "docs": { - "stability": "stable", - }, - }, - "interfaces": [ - "jsii-calc.IAnonymousImplementationProvider", - ], - "kind": "class", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2275, - }, - "methods": [ - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2280, - }, - "name": "provideAsClass", - "overrides": "jsii-calc.IAnonymousImplementationProvider", - "returns": { - "type": { - "fqn": "jsii-calc.Implementation", - }, - }, - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2284, - }, - "name": "provideAsInterface", - "overrides": "jsii-calc.IAnonymousImplementationProvider", - "returns": { - "type": { - "fqn": "jsii-calc.IAnonymouslyImplementMe", - }, - }, - }, - ], - "name": "AnonymousImplementationProvider", - "symbolId": "lib/compliance:AnonymousImplementationProvider", - }, - "jsii-calc.AsyncVirtualMethods": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.AsyncVirtualMethods", - "initializer": { - "docs": { - "stability": "stable", - }, - }, - "kind": "class", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 333, - }, - "methods": [ - { - "async": true, - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 334, - }, - "name": "callMe", - "returns": { - "type": { - "primitive": "number", - }, - }, - }, - { - "async": true, - "docs": { - "stability": "stable", - "summary": "Just calls "overrideMeToo".", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 353, - }, - "name": "callMe2", - "returns": { - "type": { - "primitive": "number", - }, - }, - }, - { - "async": true, - "docs": { - "remarks": "This is a "double promise" situation, which -means that callbacks are not going to be available immediate, but only -after an "immediates" cycle.", - "stability": "stable", - "summary": "This method calls the "callMe" async method indirectly, which will then invoke a virtual method.", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 363, - }, - "name": "callMeDoublePromise", - "returns": { - "type": { - "primitive": "number", - }, - }, - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 371, - }, - "name": "dontOverrideMe", - "returns": { - "type": { - "primitive": "number", - }, - }, - }, - { - "async": true, - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 342, - }, - "name": "overrideMe", - "parameters": [ - { - "name": "mult", - "type": { - "primitive": "number", - }, - }, - ], - "returns": { - "type": { - "primitive": "number", - }, - }, - }, - { - "async": true, - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 346, - }, - "name": "overrideMeToo", - "returns": { - "type": { - "primitive": "number", - }, - }, - }, - ], - "name": "AsyncVirtualMethods", - "symbolId": "lib/compliance:AsyncVirtualMethods", - }, - "jsii-calc.AugmentableClass": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.AugmentableClass", - "initializer": { - "docs": { - "stability": "stable", - }, - }, - "kind": "class", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1600, - }, - "methods": [ - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1601, - }, - "name": "methodOne", - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1607, - }, - "name": "methodTwo", - }, - ], - "name": "AugmentableClass", - "symbolId": "lib/compliance:AugmentableClass", - }, - "jsii-calc.BaseClass": { - "abstract": true, - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.BaseClass", - "initializer": { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/indirect-implementation.ts", - "line": 9, - }, - }, - "kind": "class", - "locationInModule": { - "filename": "lib/indirect-implementation.ts", - "line": 6, - }, - "methods": [ - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/indirect-implementation.ts", - "line": 11, - }, - "name": "method", - "returns": { - "type": { - "primitive": "number", - }, - }, - }, - ], - "name": "BaseClass", - "properties": [ - { - "docs": { - "stability": "stable", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/indirect-implementation.ts", - "line": 7, - }, - "name": "property", - "type": { - "primitive": "string", - }, - }, - ], - "symbolId": "lib/indirect-implementation:BaseClass", - }, - "jsii-calc.BaseJsii976": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.BaseJsii976", - "initializer": { - "docs": { - "stability": "stable", - }, - }, - "kind": "class", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2555, - }, - "name": "BaseJsii976", - "symbolId": "lib/compliance:BaseJsii976", - }, - "jsii-calc.Bell": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.Bell", - "initializer": { - "docs": { - "stability": "stable", - }, - }, - "interfaces": [ - "jsii-calc.IBell", - ], - "kind": "class", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2499, - }, - "methods": [ - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2502, - }, - "name": "ring", - "overrides": "jsii-calc.IBell", - }, - ], - "name": "Bell", - "properties": [ - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2500, - }, - "name": "rung", - "type": { - "primitive": "boolean", - }, - }, - ], - "symbolId": "lib/compliance:Bell", - }, - "jsii-calc.BinaryOperation": { - "abstract": true, - "assembly": "jsii-calc", - "base": "@scope/jsii-calc-lib.Operation", - "docs": { - "stability": "stable", - "summary": "Represents an operation with two operands.", - }, - "fqn": "jsii-calc.BinaryOperation", - "initializer": { - "docs": { - "stability": "stable", - "summary": "Creates a BinaryOperation.", - }, - "locationInModule": { - "filename": "lib/calculator.ts", - "line": 53, - }, - "parameters": [ - { - "docs": { - "summary": "Left-hand side operand.", - }, - "name": "lhs", - "type": { - "fqn": "@scope/jsii-calc-lib.NumericValue", - }, - }, - { - "docs": { - "summary": "Right-hand side operand.", - }, - "name": "rhs", - "type": { - "fqn": "@scope/jsii-calc-lib.NumericValue", - }, - }, - ], - }, - "interfaces": [ - "@scope/jsii-calc-lib.IFriendly", - ], - "kind": "class", - "locationInModule": { - "filename": "lib/calculator.ts", - "line": 47, - }, - "methods": [ - { - "docs": { - "stability": "stable", - "summary": "Say hello!", - }, - "locationInModule": { - "filename": "lib/calculator.ts", - "line": 60, - }, - "name": "hello", - "overrides": "@scope/jsii-calc-lib.IFriendly", - "returns": { - "type": { - "primitive": "string", - }, - }, - }, - ], - "name": "BinaryOperation", - "properties": [ - { - "docs": { - "stability": "stable", - "summary": "Left-hand side operand.", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/calculator.ts", - "line": 54, - }, - "name": "lhs", - "type": { - "fqn": "@scope/jsii-calc-lib.NumericValue", - }, - }, - { - "docs": { - "stability": "stable", - "summary": "Right-hand side operand.", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/calculator.ts", - "line": 55, - }, - "name": "rhs", - "type": { - "fqn": "@scope/jsii-calc-lib.NumericValue", - }, - }, - ], - "symbolId": "lib/calculator:BinaryOperation", - }, - "jsii-calc.BurriedAnonymousObject": { - "abstract": true, - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - "summary": "See https://github.com/aws/aws-cdk/issues/7977.", - }, - "fqn": "jsii-calc.BurriedAnonymousObject", - "initializer": { - "docs": { - "stability": "stable", - }, - }, - "kind": "class", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2845, - }, - "methods": [ - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2846, - }, - "name": "check", - "returns": { - "type": { - "primitive": "boolean", - }, - }, - }, - { - "abstract": true, - "docs": { - "returns": "\`value\`", - "stability": "stable", - "summary": "Implement this method and have it return it's parameter.", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2863, - }, - "name": "giveItBack", - "parameters": [ - { - "docs": { - "summary": "the value that should be returned.", - }, - "name": "value", - "type": { - "primitive": "any", - }, - }, - ], - "returns": { - "type": { - "primitive": "any", - }, - }, - }, - ], - "name": "BurriedAnonymousObject", - "symbolId": "lib/compliance:BurriedAnonymousObject", - }, - "jsii-calc.Calculator": { - "assembly": "jsii-calc", - "base": "jsii-calc.composition.CompositeOperation", - "docs": { - "example": "const calculator = new calc.Calculator(); -calculator.add(5); -calculator.mul(3); -console.log(calculator.expression.value);", - "remarks": "Here's how you use it: - -\`\`\`ts -const calculator = new calc.Calculator(); -calculator.add(5); -calculator.mul(3); -console.log(calculator.expression.value); -\`\`\` - -I will repeat this example again, but in an", - "stability": "stable", - "summary": "A calculator which maintains a current value and allows adding operations.", - }, - "fqn": "jsii-calc.Calculator", - "initializer": { - "docs": { - "stability": "stable", - "summary": "Creates a Calculator object.", - }, - "locationInModule": { - "filename": "lib/calculator.ts", - "line": 299, - }, - "parameters": [ - { - "docs": { - "summary": "Initialization properties.", - }, - "name": "props", - "optional": true, - "type": { - "fqn": "jsii-calc.CalculatorProps", - }, - }, - ], - }, - "kind": "class", - "locationInModule": { - "filename": "lib/calculator.ts", - "line": 294, - }, - "methods": [ - { - "docs": { - "stability": "stable", - "summary": "Adds a number to the current value.", - }, - "locationInModule": { - "filename": "lib/calculator.ts", - "line": 332, - }, - "name": "add", - "parameters": [ - { - "name": "value", - "type": { - "primitive": "number", - }, - }, - ], - }, - { - "docs": { - "stability": "stable", - "summary": "Multiplies the current value by a number.", - }, - "locationInModule": { - "filename": "lib/calculator.ts", - "line": 339, - }, - "name": "mul", - "parameters": [ - { - "name": "value", - "type": { - "primitive": "number", - }, - }, - ], - }, - { - "docs": { - "stability": "stable", - "summary": "Negates the current value.", - }, - "locationInModule": { - "filename": "lib/calculator.ts", - "line": 353, - }, - "name": "neg", - }, - { - "docs": { - "stability": "stable", - "summary": "Raises the current value by a power.", - }, - "locationInModule": { - "filename": "lib/calculator.ts", - "line": 346, - }, - "name": "pow", - "parameters": [ - { - "name": "value", - "type": { - "primitive": "number", - }, - }, - ], - }, - { - "docs": { - "stability": "stable", - "summary": "Returns teh value of the union property (if defined).", - }, - "locationInModule": { - "filename": "lib/calculator.ts", - "line": 372, - }, - "name": "readUnionValue", - "returns": { - "type": { - "primitive": "number", - }, - }, - }, - ], - "name": "Calculator", - "properties": [ - { - "docs": { - "stability": "stable", - "summary": "Returns the expression.", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/calculator.ts", - "line": 360, - }, - "name": "expression", - "overrides": "jsii-calc.composition.CompositeOperation", - "type": { - "fqn": "@scope/jsii-calc-lib.NumericValue", - }, - }, - { - "docs": { - "stability": "stable", - "summary": "A log of all operations.", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/calculator.ts", - "line": 322, - }, - "name": "operationsLog", - "type": { - "collection": { - "elementtype": { - "fqn": "@scope/jsii-calc-lib.NumericValue", - }, - "kind": "array", - }, - }, - }, - { - "docs": { - "stability": "stable", - "summary": "A map of per operation name of all operations performed.", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/calculator.ts", - "line": 317, - }, - "name": "operationsMap", - "type": { - "collection": { - "elementtype": { - "collection": { - "elementtype": { - "fqn": "@scope/jsii-calc-lib.NumericValue", - }, - "kind": "array", - }, - }, - "kind": "map", - }, - }, - }, - { - "docs": { - "stability": "stable", - "summary": "The current value.", - }, - "locationInModule": { - "filename": "lib/calculator.ts", - "line": 312, - }, - "name": "curr", - "type": { - "fqn": "@scope/jsii-calc-lib.NumericValue", - }, - }, - { - "docs": { - "stability": "stable", - "summary": "The maximum value allows in this calculator.", - }, - "locationInModule": { - "filename": "lib/calculator.ts", - "line": 327, - }, - "name": "maxValue", - "optional": true, - "type": { - "primitive": "number", - }, - }, - { - "docs": { - "stability": "stable", - "summary": "Example of a property that accepts a union of types.", - }, - "locationInModule": { - "filename": "lib/calculator.ts", - "line": 367, - }, - "name": "unionProperty", - "optional": true, - "type": { - "union": { - "types": [ - { - "fqn": "jsii-calc.Add", - }, - { - "fqn": "jsii-calc.Multiply", - }, - { - "fqn": "jsii-calc.Power", - }, - ], - }, - }, - }, - ], - "symbolId": "lib/calculator:Calculator", - }, - "jsii-calc.CalculatorProps": { - "assembly": "jsii-calc", - "datatype": true, - "docs": { - "stability": "stable", - "summary": "Properties for Calculator.", - }, - "fqn": "jsii-calc.CalculatorProps", - "kind": "interface", - "locationInModule": { - "filename": "lib/calculator.ts", - "line": 255, - }, - "name": "CalculatorProps", - "properties": [ - { - "abstract": true, - "docs": { - "default": "0", - "remarks": "NOTE: Any number works here, it's fine.", - "stability": "stable", - "summary": "The initial value of the calculator.", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/calculator.ts", - "line": 263, - }, - "name": "initialValue", - "optional": true, - "type": { - "primitive": "number", - }, - }, - { - "abstract": true, - "docs": { - "default": "none", - "stability": "stable", - "summary": "The maximum value the calculator can store.", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/calculator.ts", - "line": 270, - }, - "name": "maximumValue", - "optional": true, - "type": { - "primitive": "number", - }, - }, - ], - "symbolId": "lib/calculator:CalculatorProps", - }, - "jsii-calc.ChildStruct982": { - "assembly": "jsii-calc", - "datatype": true, - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.ChildStruct982", - "interfaces": [ - "jsii-calc.ParentStruct982", - ], - "kind": "interface", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2579, - }, - "name": "ChildStruct982", - "properties": [ - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2580, - }, - "name": "bar", - "type": { - "primitive": "number", - }, - }, - ], - "symbolId": "lib/compliance:ChildStruct982", - }, - "jsii-calc.ClassThatImplementsTheInternalInterface": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.ClassThatImplementsTheInternalInterface", - "initializer": { - "docs": { - "stability": "stable", - }, - }, - "interfaces": [ - "jsii-calc.INonInternalInterface", - ], - "kind": "class", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1863, - }, - "name": "ClassThatImplementsTheInternalInterface", - "properties": [ - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1868, - }, - "name": "a", - "overrides": "jsii-calc.IAnotherPublicInterface", - "type": { - "primitive": "string", - }, - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1869, - }, - "name": "b", - "overrides": "jsii-calc.INonInternalInterface", - "type": { - "primitive": "string", - }, - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1870, - }, - "name": "c", - "overrides": "jsii-calc.INonInternalInterface", - "type": { - "primitive": "string", - }, - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1871, - }, - "name": "d", - "type": { - "primitive": "string", - }, - }, - ], - "symbolId": "lib/compliance:ClassThatImplementsTheInternalInterface", - }, - "jsii-calc.ClassThatImplementsThePrivateInterface": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.ClassThatImplementsThePrivateInterface", - "initializer": { - "docs": { - "stability": "stable", - }, - }, - "interfaces": [ - "jsii-calc.INonInternalInterface", - ], - "kind": "class", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1874, - }, - "name": "ClassThatImplementsThePrivateInterface", - "properties": [ - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1877, - }, - "name": "a", - "overrides": "jsii-calc.IAnotherPublicInterface", - "type": { - "primitive": "string", - }, - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1878, - }, - "name": "b", - "overrides": "jsii-calc.INonInternalInterface", - "type": { - "primitive": "string", - }, - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1879, - }, - "name": "c", - "overrides": "jsii-calc.INonInternalInterface", - "type": { - "primitive": "string", - }, - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1880, - }, - "name": "e", - "type": { - "primitive": "string", - }, - }, - ], - "symbolId": "lib/compliance:ClassThatImplementsThePrivateInterface", - }, - "jsii-calc.ClassWithCollectionOfUnions": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.ClassWithCollectionOfUnions", - "initializer": { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 3069, - }, - "parameters": [ - { - "name": "unionProperty", - "type": { - "collection": { - "elementtype": { - "collection": { - "elementtype": { - "union": { - "types": [ - { - "fqn": "jsii-calc.StructA", - }, - { - "fqn": "jsii-calc.StructB", - }, - ], - }, - }, - "kind": "map", - }, - }, - "kind": "array", - }, - }, - }, - ], - }, - "kind": "class", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 3068, - }, - "name": "ClassWithCollectionOfUnions", - "properties": [ - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 3070, - }, - "name": "unionProperty", - "type": { - "collection": { - "elementtype": { - "collection": { - "elementtype": { - "union": { - "types": [ - { - "fqn": "jsii-calc.StructA", - }, - { - "fqn": "jsii-calc.StructB", - }, - ], - }, - }, - "kind": "map", - }, - }, - "kind": "array", - }, - }, - }, - ], - "symbolId": "lib/compliance:ClassWithCollectionOfUnions", - }, - "jsii-calc.ClassWithCollections": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.ClassWithCollections", - "initializer": { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2181, - }, - "parameters": [ - { - "name": "map", - "type": { - "collection": { - "elementtype": { - "primitive": "string", - }, - "kind": "map", - }, - }, - }, - { - "name": "array", - "type": { - "collection": { - "elementtype": { - "primitive": "string", - }, - "kind": "array", - }, - }, - }, - ], - }, - "kind": "class", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2171, - }, - "methods": [ - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2186, - }, - "name": "createAList", - "returns": { - "type": { - "collection": { - "elementtype": { - "primitive": "string", - }, - "kind": "array", - }, - }, - }, - "static": true, - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2190, - }, - "name": "createAMap", - "returns": { - "type": { - "collection": { - "elementtype": { - "primitive": "string", - }, - "kind": "map", - }, - }, - }, - "static": true, - }, - ], - "name": "ClassWithCollections", - "properties": [ - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2179, - }, - "name": "staticArray", - "static": true, - "type": { - "collection": { - "elementtype": { - "primitive": "string", - }, - "kind": "array", - }, - }, - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2175, - }, - "name": "staticMap", - "static": true, - "type": { - "collection": { - "elementtype": { - "primitive": "string", - }, - "kind": "map", - }, - }, - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2173, - }, - "name": "array", - "type": { - "collection": { - "elementtype": { - "primitive": "string", - }, - "kind": "array", - }, - }, - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2172, - }, - "name": "map", - "type": { - "collection": { - "elementtype": { - "primitive": "string", - }, - "kind": "map", - }, - }, - }, - ], - "symbolId": "lib/compliance:ClassWithCollections", - }, - "jsii-calc.ClassWithContainerTypes": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.ClassWithContainerTypes", - "initializer": { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/container-types.ts", - "line": 2, - }, - "parameters": [ - { - "name": "array", - "type": { - "collection": { - "elementtype": { - "fqn": "jsii-calc.DummyObj", - }, - "kind": "array", - }, - }, - }, - { - "name": "record", - "type": { - "collection": { - "elementtype": { - "fqn": "jsii-calc.DummyObj", - }, - "kind": "map", - }, - }, - }, - { - "name": "obj", - "type": { - "collection": { - "elementtype": { - "fqn": "jsii-calc.DummyObj", - }, - "kind": "map", - }, - }, - }, - { - "name": "props", - "optional": true, - "type": { - "fqn": "jsii-calc.ContainerProps", - }, - }, - ], - }, - "kind": "class", - "locationInModule": { - "filename": "lib/container-types.ts", - "line": 1, - }, - "name": "ClassWithContainerTypes", - "properties": [ - { - "docs": { - "stability": "stable", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/container-types.ts", - "line": 3, - }, - "name": "array", - "type": { - "collection": { - "elementtype": { - "fqn": "jsii-calc.DummyObj", - }, - "kind": "array", - }, - }, - }, - { - "docs": { - "stability": "stable", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/container-types.ts", - "line": 5, - }, - "name": "obj", - "type": { - "collection": { - "elementtype": { - "fqn": "jsii-calc.DummyObj", - }, - "kind": "map", - }, - }, - }, - { - "docs": { - "stability": "stable", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/container-types.ts", - "line": 4, - }, - "name": "record", - "type": { - "collection": { - "elementtype": { - "fqn": "jsii-calc.DummyObj", - }, - "kind": "map", - }, - }, - }, - { - "docs": { - "stability": "stable", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/container-types.ts", - "line": 6, - }, - "name": "props", - "optional": true, - "type": { - "fqn": "jsii-calc.ContainerProps", - }, - }, - ], - "symbolId": "lib/container-types:ClassWithContainerTypes", - }, - "jsii-calc.ClassWithDocs": { - "assembly": "jsii-calc", - "docs": { - "custom": { - "customAttribute": "hasAValue", - }, - "example": "function anExample() { -}", - "remarks": "The docs are great. They're a bunch of tags.", - "see": "https://aws.amazon.com/", - "stability": "stable", - "summary": "This class has docs.", - }, - "fqn": "jsii-calc.ClassWithDocs", - "initializer": { - "docs": { - "stability": "stable", - }, - }, - "kind": "class", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1948, - }, - "name": "ClassWithDocs", - "symbolId": "lib/compliance:ClassWithDocs", - }, - "jsii-calc.ClassWithJavaReservedWords": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.ClassWithJavaReservedWords", - "initializer": { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2121, - }, - "parameters": [ - { - "name": "int", - "type": { - "primitive": "string", - }, - }, - ], - }, - "kind": "class", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2118, - }, - "methods": [ - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2125, - }, - "name": "import", - "parameters": [ - { - "name": "assert", - "type": { - "primitive": "string", - }, - }, - ], - "returns": { - "type": { - "primitive": "string", - }, - }, - }, - ], - "name": "ClassWithJavaReservedWords", - "properties": [ - { - "docs": { - "stability": "stable", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2119, - }, - "name": "int", - "type": { - "primitive": "string", - }, - }, - ], - "symbolId": "lib/compliance:ClassWithJavaReservedWords", - }, - "jsii-calc.ClassWithMutableObjectLiteralProperty": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.ClassWithMutableObjectLiteralProperty", - "initializer": { - "docs": { - "stability": "stable", - }, - }, - "kind": "class", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1351, - }, - "name": "ClassWithMutableObjectLiteralProperty", - "properties": [ - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1352, - }, - "name": "mutableObject", - "type": { - "fqn": "jsii-calc.IMutableObjectLiteral", - }, - }, - ], - "symbolId": "lib/compliance:ClassWithMutableObjectLiteralProperty", - }, - "jsii-calc.ClassWithNestedUnion": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.ClassWithNestedUnion", - "initializer": { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 3079, - }, - "parameters": [ - { - "name": "unionProperty", - "type": { - "collection": { - "elementtype": { - "union": { - "types": [ - { - "collection": { - "elementtype": { - "union": { - "types": [ - { - "fqn": "jsii-calc.StructA", - }, - { - "fqn": "jsii-calc.StructB", - }, - ], - }, - }, - "kind": "map", - }, - }, - { - "collection": { - "elementtype": { - "union": { - "types": [ - { - "fqn": "jsii-calc.StructA", - }, - { - "fqn": "jsii-calc.StructB", - }, - ], - }, - }, - "kind": "array", - }, - }, - ], - }, - }, - "kind": "array", - }, - }, - }, - ], - }, - "kind": "class", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 3078, - }, - "name": "ClassWithNestedUnion", - "properties": [ - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 3080, - }, - "name": "unionProperty", - "type": { - "collection": { - "elementtype": { - "union": { - "types": [ - { - "collection": { - "elementtype": { - "union": { - "types": [ - { - "fqn": "jsii-calc.StructA", - }, - { - "fqn": "jsii-calc.StructB", - }, - ], - }, - }, - "kind": "map", - }, - }, - { - "collection": { - "elementtype": { - "union": { - "types": [ - { - "fqn": "jsii-calc.StructA", - }, - { - "fqn": "jsii-calc.StructB", - }, - ], - }, - }, - "kind": "array", - }, - }, - ], - }, - }, - "kind": "array", - }, - }, - }, - ], - "symbolId": "lib/compliance:ClassWithNestedUnion", - }, - "jsii-calc.ClassWithPrivateConstructorAndAutomaticProperties": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - "summary": "Class that implements interface properties automatically, but using a private constructor.", - }, - "fqn": "jsii-calc.ClassWithPrivateConstructorAndAutomaticProperties", - "interfaces": [ - "jsii-calc.IInterfaceWithProperties", - ], - "kind": "class", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1378, - }, - "methods": [ - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1381, - }, - "name": "create", - "parameters": [ - { - "name": "readOnlyString", - "type": { - "primitive": "string", - }, - }, - { - "name": "readWriteString", - "type": { - "primitive": "string", - }, - }, - ], - "returns": { - "type": { - "fqn": "jsii-calc.ClassWithPrivateConstructorAndAutomaticProperties", - }, - }, - "static": true, - }, - ], - "name": "ClassWithPrivateConstructorAndAutomaticProperties", - "properties": [ - { - "docs": { - "stability": "stable", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1389, - }, - "name": "readOnlyString", - "overrides": "jsii-calc.IInterfaceWithProperties", - "type": { - "primitive": "string", - }, - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1390, - }, - "name": "readWriteString", - "overrides": "jsii-calc.IInterfaceWithProperties", - "type": { - "primitive": "string", - }, - }, - ], - "symbolId": "lib/compliance:ClassWithPrivateConstructorAndAutomaticProperties", - }, - "jsii-calc.ConfusingToJackson": { - "assembly": "jsii-calc", - "docs": { - "see": "https://github.com/aws/aws-cdk/issues/4080", - "stability": "stable", - "summary": "This tries to confuse Jackson by having overloaded property setters.", - }, - "fqn": "jsii-calc.ConfusingToJackson", - "kind": "class", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2718, - }, - "methods": [ - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2719, - }, - "name": "makeInstance", - "returns": { - "type": { - "fqn": "jsii-calc.ConfusingToJackson", - }, - }, - "static": true, - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2723, - }, - "name": "makeStructInstance", - "returns": { - "type": { - "fqn": "jsii-calc.ConfusingToJacksonStruct", - }, - }, - "static": true, - }, - ], - "name": "ConfusingToJackson", - "properties": [ - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2727, - }, - "name": "unionProperty", - "optional": true, - "type": { - "union": { - "types": [ - { - "fqn": "@scope/jsii-calc-lib.IFriendly", - }, - { - "collection": { - "elementtype": { - "union": { - "types": [ - { - "fqn": "@scope/jsii-calc-lib.IFriendly", - }, - { - "fqn": "jsii-calc.AbstractClass", - }, - ], - }, - }, - "kind": "array", - }, - }, - ], - }, - }, - }, - ], - "symbolId": "lib/compliance:ConfusingToJackson", - }, - "jsii-calc.ConfusingToJacksonStruct": { - "assembly": "jsii-calc", - "datatype": true, - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.ConfusingToJacksonStruct", - "kind": "interface", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2731, - }, - "name": "ConfusingToJacksonStruct", - "properties": [ - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2732, - }, - "name": "unionProperty", - "optional": true, - "type": { - "union": { - "types": [ - { - "fqn": "@scope/jsii-calc-lib.IFriendly", - }, - { - "collection": { - "elementtype": { - "union": { - "types": [ - { - "fqn": "@scope/jsii-calc-lib.IFriendly", - }, - { - "fqn": "jsii-calc.AbstractClass", - }, - ], - }, - }, - "kind": "array", - }, - }, - ], - }, - }, - }, - ], - "symbolId": "lib/compliance:ConfusingToJacksonStruct", - }, - "jsii-calc.ConstructorPassesThisOut": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.ConstructorPassesThisOut", - "initializer": { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1905, - }, - "parameters": [ - { - "name": "consumer", - "type": { - "fqn": "jsii-calc.PartiallyInitializedThisConsumer", - }, - }, - ], - }, - "kind": "class", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1904, - }, - "name": "ConstructorPassesThisOut", - "symbolId": "lib/compliance:ConstructorPassesThisOut", - }, - "jsii-calc.Constructors": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.Constructors", - "initializer": { - "docs": { - "stability": "stable", - }, - }, - "kind": "class", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1648, - }, - "methods": [ - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1665, - }, - "name": "hiddenInterface", - "returns": { - "type": { - "fqn": "jsii-calc.IPublicInterface", - }, - }, - "static": true, - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1669, - }, - "name": "hiddenInterfaces", - "returns": { - "type": { - "collection": { - "elementtype": { - "fqn": "jsii-calc.IPublicInterface", - }, - "kind": "array", - }, - }, - }, - "static": true, - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1673, - }, - "name": "hiddenSubInterfaces", - "returns": { - "type": { - "collection": { - "elementtype": { - "fqn": "jsii-calc.IPublicInterface", - }, - "kind": "array", - }, - }, - }, - "static": true, - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1649, - }, - "name": "makeClass", - "returns": { - "type": { - "fqn": "jsii-calc.PublicClass", - }, - }, - "static": true, - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1653, - }, - "name": "makeInterface", - "returns": { - "type": { - "fqn": "jsii-calc.IPublicInterface", - }, - }, - "static": true, - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1657, - }, - "name": "makeInterface2", - "returns": { - "type": { - "fqn": "jsii-calc.IPublicInterface2", - }, - }, - "static": true, - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1661, - }, - "name": "makeInterfaces", - "returns": { - "type": { - "collection": { - "elementtype": { - "fqn": "jsii-calc.IPublicInterface", - }, - "kind": "array", - }, - }, - }, - "static": true, - }, - ], - "name": "Constructors", - "symbolId": "lib/compliance:Constructors", - }, - "jsii-calc.ConsumePureInterface": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.ConsumePureInterface", - "initializer": { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2742, - }, - "parameters": [ - { - "name": "delegate", - "type": { - "fqn": "jsii-calc.IStructReturningDelegate", - }, - }, - ], - }, - "kind": "class", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2741, - }, - "methods": [ - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2744, - }, - "name": "workItBaby", - "returns": { - "type": { - "fqn": "jsii-calc.StructB", - }, - }, - }, - ], - "name": "ConsumePureInterface", - "symbolId": "lib/compliance:ConsumePureInterface", - }, - "jsii-calc.ConsumerCanRingBell": { - "assembly": "jsii-calc", - "docs": { - "remarks": "Check that if a JSII consumer implements IConsumerWithInterfaceParam, they can call -the method on the argument that they're passed...", - "stability": "stable", - "summary": "Test calling back to consumers that implement interfaces.", - }, - "fqn": "jsii-calc.ConsumerCanRingBell", - "initializer": { - "docs": { - "stability": "stable", - }, - }, - "kind": "class", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2384, - }, - "methods": [ - { - "docs": { - "remarks": "Returns whether the bell was rung.", - "stability": "stable", - "summary": "...if the interface is implemented using an object literal.", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2390, - }, - "name": "staticImplementedByObjectLiteral", - "parameters": [ - { - "name": "ringer", - "type": { - "fqn": "jsii-calc.IBellRinger", - }, - }, - ], - "returns": { - "type": { - "primitive": "boolean", - }, - }, - "static": true, - }, - { - "docs": { - "remarks": "Return whether the bell was rung.", - "stability": "stable", - "summary": "...if the interface is implemented using a private class.", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2416, - }, - "name": "staticImplementedByPrivateClass", - "parameters": [ - { - "name": "ringer", - "type": { - "fqn": "jsii-calc.IBellRinger", - }, - }, - ], - "returns": { - "type": { - "primitive": "boolean", - }, - }, - "static": true, - }, - { - "docs": { - "remarks": "Return whether the bell was rung.", - "stability": "stable", - "summary": "...if the interface is implemented using a public class.", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2405, - }, - "name": "staticImplementedByPublicClass", - "parameters": [ - { - "name": "ringer", - "type": { - "fqn": "jsii-calc.IBellRinger", - }, - }, - ], - "returns": { - "type": { - "primitive": "boolean", - }, - }, - "static": true, - }, - { - "docs": { - "remarks": "Return whether the bell was rung.", - "stability": "stable", - "summary": "If the parameter is a concrete class instead of an interface.", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2427, - }, - "name": "staticWhenTypedAsClass", - "parameters": [ - { - "name": "ringer", - "type": { - "fqn": "jsii-calc.IConcreteBellRinger", - }, - }, - ], - "returns": { - "type": { - "primitive": "boolean", - }, - }, - "static": true, - }, - { - "docs": { - "remarks": "Returns whether the bell was rung.", - "stability": "stable", - "summary": "...if the interface is implemented using an object literal.", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2437, - }, - "name": "implementedByObjectLiteral", - "parameters": [ - { - "name": "ringer", - "type": { - "fqn": "jsii-calc.IBellRinger", - }, - }, - ], - "returns": { - "type": { - "primitive": "boolean", - }, - }, - }, - { - "docs": { - "remarks": "Return whether the bell was rung.", - "stability": "stable", - "summary": "...if the interface is implemented using a private class.", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2463, - }, - "name": "implementedByPrivateClass", - "parameters": [ - { - "name": "ringer", - "type": { - "fqn": "jsii-calc.IBellRinger", - }, - }, - ], - "returns": { - "type": { - "primitive": "boolean", - }, - }, - }, - { - "docs": { - "remarks": "Return whether the bell was rung.", - "stability": "stable", - "summary": "...if the interface is implemented using a public class.", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2452, - }, - "name": "implementedByPublicClass", - "parameters": [ - { - "name": "ringer", - "type": { - "fqn": "jsii-calc.IBellRinger", - }, - }, - ], - "returns": { - "type": { - "primitive": "boolean", - }, - }, - }, - { - "docs": { - "remarks": "Return whether the bell was rung.", - "stability": "stable", - "summary": "If the parameter is a concrete class instead of an interface.", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2474, - }, - "name": "whenTypedAsClass", - "parameters": [ - { - "name": "ringer", - "type": { - "fqn": "jsii-calc.IConcreteBellRinger", - }, - }, - ], - "returns": { - "type": { - "primitive": "boolean", - }, - }, - }, - ], - "name": "ConsumerCanRingBell", - "symbolId": "lib/compliance:ConsumerCanRingBell", - }, - "jsii-calc.ConsumersOfThisCrazyTypeSystem": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.ConsumersOfThisCrazyTypeSystem", - "initializer": { - "docs": { - "stability": "stable", - }, - }, - "kind": "class", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1883, - }, - "methods": [ - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1884, - }, - "name": "consumeAnotherPublicInterface", - "parameters": [ - { - "name": "obj", - "type": { - "fqn": "jsii-calc.IAnotherPublicInterface", - }, - }, - ], - "returns": { - "type": { - "primitive": "string", - }, - }, - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1888, - }, - "name": "consumeNonInternalInterface", - "parameters": [ - { - "name": "obj", - "type": { - "fqn": "jsii-calc.INonInternalInterface", - }, - }, - ], - "returns": { - "type": { - "primitive": "any", - }, - }, - }, - ], - "name": "ConsumersOfThisCrazyTypeSystem", - "symbolId": "lib/compliance:ConsumersOfThisCrazyTypeSystem", - }, - "jsii-calc.ContainerProps": { - "assembly": "jsii-calc", - "datatype": true, - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.ContainerProps", - "kind": "interface", - "locationInModule": { - "filename": "lib/container-types.ts", - "line": 10, - }, - "name": "ContainerProps", - "properties": [ - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/container-types.ts", - "line": 11, - }, - "name": "arrayProp", - "type": { - "collection": { - "elementtype": { - "fqn": "jsii-calc.DummyObj", - }, - "kind": "array", - }, - }, - }, - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/container-types.ts", - "line": 13, - }, - "name": "objProp", - "type": { - "collection": { - "elementtype": { - "fqn": "jsii-calc.DummyObj", - }, - "kind": "map", - }, - }, - }, - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/container-types.ts", - "line": 12, - }, - "name": "recordProp", - "type": { - "collection": { - "elementtype": { - "fqn": "jsii-calc.DummyObj", - }, - "kind": "map", - }, - }, - }, - ], - "symbolId": "lib/container-types:ContainerProps", - }, - "jsii-calc.DataRenderer": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - "summary": "Verifies proper type handling through dynamic overrides.", - }, - "fqn": "jsii-calc.DataRenderer", - "initializer": { - "docs": { - "stability": "stable", - }, - }, - "kind": "class", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2044, - }, - "methods": [ - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2045, - }, - "name": "render", - "parameters": [ - { - "name": "data", - "optional": true, - "type": { - "fqn": "@scope/jsii-calc-lib.MyFirstStruct", - }, - }, - ], - "returns": { - "type": { - "primitive": "string", - }, - }, - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2051, - }, - "name": "renderArbitrary", - "parameters": [ - { - "name": "data", - "type": { - "collection": { - "elementtype": { - "primitive": "any", - }, - "kind": "map", - }, - }, - }, - ], - "returns": { - "type": { - "primitive": "string", - }, - }, - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2055, - }, - "name": "renderMap", - "parameters": [ - { - "name": "map", - "type": { - "collection": { - "elementtype": { - "primitive": "any", - }, - "kind": "map", - }, - }, - }, - ], - "returns": { - "type": { - "primitive": "string", - }, - }, - }, - ], - "name": "DataRenderer", - "symbolId": "lib/compliance:DataRenderer", - }, - "jsii-calc.Default": { - "assembly": "jsii-calc", - "docs": { - "see": "https://github.com/aws/jsii/issues/2637", - "stability": "stable", - "summary": "A class named "Default".", - }, - "fqn": "jsii-calc.Default", - "initializer": { - "docs": { - "stability": "stable", - }, - }, - "kind": "class", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 3029, - }, - "methods": [ - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 3030, - }, - "name": "pleaseCompile", - }, - ], - "name": "Default", - "symbolId": "lib/compliance:Default", - }, - "jsii-calc.DefaultedConstructorArgument": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.DefaultedConstructorArgument", - "initializer": { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 318, - }, - "parameters": [ - { - "name": "arg1", - "optional": true, - "type": { - "primitive": "number", - }, - }, - { - "name": "arg2", - "optional": true, - "type": { - "primitive": "string", - }, - }, - { - "name": "arg3", - "optional": true, - "type": { - "primitive": "date", - }, - }, - ], - }, - "kind": "class", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 317, - }, - "name": "DefaultedConstructorArgument", - "properties": [ - { - "docs": { - "stability": "stable", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 319, - }, - "name": "arg1", - "type": { - "primitive": "number", - }, - }, - { - "docs": { - "stability": "stable", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 321, - }, - "name": "arg3", - "type": { - "primitive": "date", - }, - }, - { - "docs": { - "stability": "stable", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 320, - }, - "name": "arg2", - "optional": true, - "type": { - "primitive": "string", - }, - }, - ], - "symbolId": "lib/compliance:DefaultedConstructorArgument", - }, - "jsii-calc.Demonstrate982": { - "assembly": "jsii-calc", - "docs": { - "remarks": "call #takeThis() -> An ObjectRef will be provisioned for the value (it'll be re-used!) -2. call #takeThisToo() -> The ObjectRef from before will need to be down-cased to the ParentStruct982 type", - "stability": "stable", - "summary": "1.", - }, - "fqn": "jsii-calc.Demonstrate982", - "initializer": { - "docs": { - "stability": "stable", - }, - }, - "kind": "class", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2586, - }, - "methods": [ - { - "docs": { - "stability": "stable", - "summary": "It's dangerous to go alone!", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2593, - }, - "name": "takeThis", - "returns": { - "type": { - "fqn": "jsii-calc.ChildStruct982", - }, - }, - "static": true, - }, - { - "docs": { - "stability": "stable", - "summary": "It's dangerous to go alone!", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2598, - }, - "name": "takeThisToo", - "returns": { - "type": { - "fqn": "jsii-calc.ParentStruct982", - }, - }, - "static": true, - }, - ], - "name": "Demonstrate982", - "symbolId": "lib/compliance:Demonstrate982", - }, - "jsii-calc.DeprecatedClass": { - "assembly": "jsii-calc", - "docs": { - "deprecated": "a pretty boring class", - "stability": "deprecated", - }, - "fqn": "jsii-calc.DeprecatedClass", - "initializer": { - "docs": { - "deprecated": "this constructor is "just" okay", - "stability": "deprecated", - }, - "locationInModule": { - "filename": "lib/stability.ts", - "line": 95, - }, - "parameters": [ - { - "name": "readonlyString", - "type": { - "primitive": "string", - }, - }, - { - "name": "mutableNumber", - "optional": true, - "type": { - "primitive": "number", - }, - }, - ], - }, - "kind": "class", - "locationInModule": { - "filename": "lib/stability.ts", - "line": 89, - }, - "methods": [ - { - "docs": { - "deprecated": "it was a bad idea", - "stability": "deprecated", - }, - "locationInModule": { - "filename": "lib/stability.ts", - "line": 100, - }, - "name": "method", - }, - ], - "name": "DeprecatedClass", - "properties": [ - { - "docs": { - "deprecated": "this is not always "wazoo", be ready to be disappointed", - "stability": "deprecated", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/stability.ts", - "line": 91, - }, - "name": "readonlyProperty", - "type": { - "primitive": "string", - }, - }, - { - "docs": { - "deprecated": "shouldn't have been mutable", - "stability": "deprecated", - }, - "locationInModule": { - "filename": "lib/stability.ts", - "line": 93, - }, - "name": "mutableProperty", - "optional": true, - "type": { - "primitive": "number", - }, - }, - ], - "symbolId": "lib/stability:DeprecatedClass", - }, - "jsii-calc.DeprecatedEnum": { - "assembly": "jsii-calc", - "docs": { - "deprecated": "your deprecated selection of bad options", - "stability": "deprecated", - }, - "fqn": "jsii-calc.DeprecatedEnum", - "kind": "enum", - "locationInModule": { - "filename": "lib/stability.ts", - "line": 105, - }, - "members": [ - { - "docs": { - "deprecated": "option A is not great", - "stability": "deprecated", - }, - "name": "OPTION_A", - }, - { - "docs": { - "deprecated": "option B is kinda bad, too", - "stability": "deprecated", - }, - "name": "OPTION_B", - }, - ], - "name": "DeprecatedEnum", - "symbolId": "lib/stability:DeprecatedEnum", - }, - "jsii-calc.DeprecatedStruct": { - "assembly": "jsii-calc", - "datatype": true, - "docs": { - "deprecated": "it just wraps a string", - "stability": "deprecated", - }, - "fqn": "jsii-calc.DeprecatedStruct", - "kind": "interface", - "locationInModule": { - "filename": "lib/stability.ts", - "line": 77, - }, - "name": "DeprecatedStruct", - "properties": [ - { - "abstract": true, - "docs": { - "deprecated": "well, yeah", - "stability": "deprecated", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/stability.ts", - "line": 79, - }, - "name": "readonlyProperty", - "type": { - "primitive": "string", - }, - }, - ], - "symbolId": "lib/stability:DeprecatedStruct", - }, - "jsii-calc.DerivedClassHasNoProperties.Base": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.DerivedClassHasNoProperties.Base", - "initializer": { - "docs": { - "stability": "stable", - }, - }, - "kind": "class", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 326, - }, - "name": "Base", - "namespace": "DerivedClassHasNoProperties", - "properties": [ - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 327, - }, - "name": "prop", - "type": { - "primitive": "string", - }, - }, - ], - "symbolId": "lib/compliance:DerivedClassHasNoProperties.Base", - }, - "jsii-calc.DerivedClassHasNoProperties.Derived": { - "assembly": "jsii-calc", - "base": "jsii-calc.DerivedClassHasNoProperties.Base", - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.DerivedClassHasNoProperties.Derived", - "initializer": { - "docs": { - "stability": "stable", - }, - }, - "kind": "class", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 330, - }, - "name": "Derived", - "namespace": "DerivedClassHasNoProperties", - "symbolId": "lib/compliance:DerivedClassHasNoProperties.Derived", - }, - "jsii-calc.DerivedStruct": { - "assembly": "jsii-calc", - "datatype": true, - "docs": { - "stability": "stable", - "summary": "A struct which derives from another struct.", - }, - "fqn": "jsii-calc.DerivedStruct", - "interfaces": [ - "@scope/jsii-calc-lib.MyFirstStruct", - ], - "kind": "interface", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 541, - }, - "name": "DerivedStruct", - "properties": [ - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 547, - }, - "name": "anotherRequired", - "type": { - "primitive": "date", - }, - }, - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 546, - }, - "name": "bool", - "type": { - "primitive": "boolean", - }, - }, - { - "abstract": true, - "docs": { - "stability": "stable", - "summary": "An example of a non primitive property.", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 545, - }, - "name": "nonPrimitive", - "type": { - "fqn": "jsii-calc.DoubleTrouble", - }, - }, - { - "abstract": true, - "docs": { - "stability": "stable", - "summary": "This is optional.", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 553, - }, - "name": "anotherOptional", - "optional": true, - "type": { - "collection": { - "elementtype": { - "fqn": "@scope/jsii-calc-lib.NumericValue", - }, - "kind": "map", - }, - }, - }, - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 549, - }, - "name": "optionalAny", - "optional": true, - "type": { - "primitive": "any", - }, - }, - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 548, - }, - "name": "optionalArray", - "optional": true, - "type": { - "collection": { - "elementtype": { - "primitive": "string", - }, - "kind": "array", - }, - }, - }, - ], - "symbolId": "lib/compliance:DerivedStruct", - }, - "jsii-calc.DiamondBottom": { - "assembly": "jsii-calc", - "datatype": true, - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.DiamondBottom", - "interfaces": [ - "@scope/jsii-calc-lib.DiamondLeft", - "@scope/jsii-calc-lib.DiamondRight", - ], - "kind": "interface", - "locationInModule": { - "filename": "lib/duplicate-inherited-prop.ts", - "line": 7, - }, - "name": "DiamondBottom", - "properties": [ - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/duplicate-inherited-prop.ts", - "line": 8, - }, - "name": "bottom", - "optional": true, - "type": { - "primitive": "date", - }, - }, - ], - "symbolId": "lib/duplicate-inherited-prop:DiamondBottom", - }, - "jsii-calc.DiamondInheritanceBaseLevelStruct": { - "assembly": "jsii-calc", - "datatype": true, - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.DiamondInheritanceBaseLevelStruct", - "kind": "interface", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2089, - }, - "name": "DiamondInheritanceBaseLevelStruct", - "properties": [ - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2090, - }, - "name": "baseLevelProperty", - "type": { - "primitive": "string", - }, - }, - ], - "symbolId": "lib/compliance:DiamondInheritanceBaseLevelStruct", - }, - "jsii-calc.DiamondInheritanceFirstMidLevelStruct": { - "assembly": "jsii-calc", - "datatype": true, - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.DiamondInheritanceFirstMidLevelStruct", - "interfaces": [ - "jsii-calc.DiamondInheritanceBaseLevelStruct", - ], - "kind": "interface", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2093, - }, - "name": "DiamondInheritanceFirstMidLevelStruct", - "properties": [ - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2095, - }, - "name": "firstMidLevelProperty", - "type": { - "primitive": "string", - }, - }, - ], - "symbolId": "lib/compliance:DiamondInheritanceFirstMidLevelStruct", - }, - "jsii-calc.DiamondInheritanceSecondMidLevelStruct": { - "assembly": "jsii-calc", - "datatype": true, - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.DiamondInheritanceSecondMidLevelStruct", - "interfaces": [ - "jsii-calc.DiamondInheritanceBaseLevelStruct", - ], - "kind": "interface", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2098, - }, - "name": "DiamondInheritanceSecondMidLevelStruct", - "properties": [ - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2100, - }, - "name": "secondMidLevelProperty", - "type": { - "primitive": "string", - }, - }, - ], - "symbolId": "lib/compliance:DiamondInheritanceSecondMidLevelStruct", - }, - "jsii-calc.DiamondInheritanceTopLevelStruct": { - "assembly": "jsii-calc", - "datatype": true, - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.DiamondInheritanceTopLevelStruct", - "interfaces": [ - "jsii-calc.DiamondInheritanceFirstMidLevelStruct", - "jsii-calc.DiamondInheritanceSecondMidLevelStruct", - ], - "kind": "interface", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2103, - }, - "name": "DiamondInheritanceTopLevelStruct", - "properties": [ - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2106, - }, - "name": "topLevelProperty", - "type": { - "primitive": "string", - }, - }, - ], - "symbolId": "lib/compliance:DiamondInheritanceTopLevelStruct", - }, - "jsii-calc.DisappointingCollectionSource": { - "assembly": "jsii-calc", - "docs": { - "remarks": "This source of collections is disappointing - it'll always give you nothing :(", - "stability": "stable", - "summary": "Verifies that null/undefined can be returned for optional collections.", - }, - "fqn": "jsii-calc.DisappointingCollectionSource", - "kind": "class", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2608, - }, - "name": "DisappointingCollectionSource", - "properties": [ - { - "const": true, - "docs": { - "remarks": "(Nah, just a billion dollars mistake!)", - "stability": "stable", - "summary": "Some List of strings, maybe?", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2610, - }, - "name": "maybeList", - "optional": true, - "static": true, - "type": { - "collection": { - "elementtype": { - "primitive": "string", - }, - "kind": "array", - }, - }, - }, - { - "const": true, - "docs": { - "remarks": "(Nah, just a billion dollars mistake!)", - "stability": "stable", - "summary": "Some Map of strings to numbers, maybe?", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2612, - }, - "name": "maybeMap", - "optional": true, - "static": true, - "type": { - "collection": { - "elementtype": { - "primitive": "number", - }, - "kind": "map", - }, - }, - }, - ], - "symbolId": "lib/compliance:DisappointingCollectionSource", - }, - "jsii-calc.DoNotOverridePrivates": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.DoNotOverridePrivates", - "initializer": { - "docs": { - "stability": "stable", - }, - }, - "kind": "class", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1355, - }, - "methods": [ - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1370, - }, - "name": "changePrivatePropertyValue", - "parameters": [ - { - "name": "newValue", - "type": { - "primitive": "string", - }, - }, - ], - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1362, - }, - "name": "privateMethodValue", - "returns": { - "type": { - "primitive": "string", - }, - }, - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1366, - }, - "name": "privatePropertyValue", - "returns": { - "type": { - "primitive": "string", - }, - }, - }, - ], - "name": "DoNotOverridePrivates", - "symbolId": "lib/compliance:DoNotOverridePrivates", - }, - "jsii-calc.DoNotRecognizeAnyAsOptional": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - "summary": "jsii#284: do not recognize "any" as an optional argument.", - }, - "fqn": "jsii-calc.DoNotRecognizeAnyAsOptional", - "initializer": { - "docs": { - "stability": "stable", - }, - }, - "kind": "class", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1412, - }, - "methods": [ - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1413, - }, - "name": "method", - "parameters": [ - { - "name": "_requiredAny", - "type": { - "primitive": "any", - }, - }, - { - "name": "_optionalAny", - "optional": true, - "type": { - "primitive": "any", - }, - }, - { - "name": "_optionalString", - "optional": true, - "type": { - "primitive": "string", - }, - }, - ], - }, - ], - "name": "DoNotRecognizeAnyAsOptional", - "symbolId": "lib/compliance:DoNotRecognizeAnyAsOptional", - }, - "jsii-calc.DocumentedClass": { - "assembly": "jsii-calc", - "docs": { - "example": "const x = 12 + 44; -const s1 = "string"; -const s2 = "string \\nwith new newlines"; // see https://github.com/aws/jsii/issues/2569 -const s3 = \`string - with - new lines\`;", - "remarks": "This is the meat of the TSDoc comment. It may contain -multiple lines and multiple paragraphs. - -Multiple paragraphs are separated by an empty line.", - "stability": "stable", - "summary": "Here's the first line of the TSDoc comment.", - }, - "fqn": "jsii-calc.DocumentedClass", - "initializer": { - "docs": { - "stability": "stable", - }, - }, - "kind": "class", - "locationInModule": { - "filename": "lib/documented.ts", - "line": 18, - }, - "methods": [ - { - "docs": { - "remarks": "This will print out a friendly greeting intended for the indicated person.", - "returns": "A number that everyone knows very well and represents the answer -to the ultimate question", - "stability": "stable", - "summary": "Greet the indicated person.", - }, - "locationInModule": { - "filename": "lib/documented.ts", - "line": 28, - }, - "name": "greet", - "parameters": [ - { - "docs": { - "summary": "The person to be greeted.", - }, - "name": "greetee", - "optional": true, - "type": { - "fqn": "jsii-calc.Greetee", - }, - }, - ], - "returns": { - "type": { - "primitive": "number", - }, - }, - }, - { - "docs": { - "stability": "experimental", - "summary": "Say ¡Hola!", - }, - "locationInModule": { - "filename": "lib/documented.ts", - "line": 38, - }, - "name": "hola", - }, - ], - "name": "DocumentedClass", - "symbolId": "lib/documented:DocumentedClass", - }, - "jsii-calc.DontComplainAboutVariadicAfterOptional": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.DontComplainAboutVariadicAfterOptional", - "initializer": { - "docs": { - "stability": "stable", - }, - }, - "kind": "class", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1489, - }, - "methods": [ - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1490, - }, - "name": "optionalAndVariadic", - "parameters": [ - { - "name": "optional", - "optional": true, - "type": { - "primitive": "string", - }, - }, - { - "name": "things", - "type": { - "primitive": "string", - }, - "variadic": true, - }, - ], - "returns": { - "type": { - "primitive": "string", - }, - }, - "variadic": true, - }, - ], - "name": "DontComplainAboutVariadicAfterOptional", - "symbolId": "lib/compliance:DontComplainAboutVariadicAfterOptional", - }, - "jsii-calc.DoubleTrouble": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.DoubleTrouble", - "initializer": { - "docs": { - "stability": "stable", - }, - }, - "interfaces": [ - "jsii-calc.IFriendlyRandomGenerator", - ], - "kind": "class", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 485, - }, - "methods": [ - { - "docs": { - "stability": "stable", - "summary": "Say hello!", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 490, - }, - "name": "hello", - "overrides": "@scope/jsii-calc-lib.IFriendly", - "returns": { - "type": { - "primitive": "string", - }, - }, - }, - { - "docs": { - "stability": "stable", - "summary": "Returns another random number.", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 486, - }, - "name": "next", - "overrides": "jsii-calc.IRandomNumberGenerator", - "returns": { - "type": { - "primitive": "number", - }, - }, - }, - ], - "name": "DoubleTrouble", - "symbolId": "lib/compliance:DoubleTrouble", - }, - "jsii-calc.DummyObj": { - "assembly": "jsii-calc", - "datatype": true, - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.DummyObj", - "kind": "interface", - "locationInModule": { - "filename": "lib/container-types.ts", - "line": 16, - }, - "name": "DummyObj", - "properties": [ - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/container-types.ts", - "line": 17, - }, - "name": "example", - "type": { - "primitive": "string", - }, - }, - ], - "symbolId": "lib/container-types:DummyObj", - }, - "jsii-calc.DynamicPropertyBearer": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - "summary": "Ensures we can override a dynamic property that was inherited.", - }, - "fqn": "jsii-calc.DynamicPropertyBearer", - "initializer": { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2870, - }, - "parameters": [ - { - "name": "valueStore", - "type": { - "primitive": "string", - }, - }, - ], - }, - "kind": "class", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2869, - }, - "name": "DynamicPropertyBearer", - "properties": [ - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2872, - }, - "name": "dynamicProperty", - "type": { - "primitive": "string", - }, - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2870, - }, - "name": "valueStore", - "type": { - "primitive": "string", - }, - }, - ], - "symbolId": "lib/compliance:DynamicPropertyBearer", - }, - "jsii-calc.DynamicPropertyBearerChild": { - "assembly": "jsii-calc", - "base": "jsii-calc.DynamicPropertyBearer", - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.DynamicPropertyBearerChild", - "initializer": { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2881, - }, - "parameters": [ - { - "name": "originalValue", - "type": { - "primitive": "string", - }, - }, - ], - }, - "kind": "class", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2880, - }, - "methods": [ - { - "docs": { - "returns": "the old value that was set.", - "stability": "stable", - "summary": "Sets \`this.dynamicProperty\` to the new value, and returns the old value.", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2892, - }, - "name": "overrideValue", - "parameters": [ - { - "docs": { - "summary": "the new value to be set.", - }, - "name": "newValue", - "type": { - "primitive": "string", - }, - }, - ], - "returns": { - "type": { - "primitive": "string", - }, - }, - }, - ], - "name": "DynamicPropertyBearerChild", - "properties": [ - { - "docs": { - "stability": "stable", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2881, - }, - "name": "originalValue", - "type": { - "primitive": "string", - }, - }, - ], - "symbolId": "lib/compliance:DynamicPropertyBearerChild", - }, - "jsii-calc.Entropy": { - "abstract": true, - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - "summary": "This class is used to validate that serialization and deserialization does not interpret ISO-8601-formatted timestampts to the native date/time object, as the jsii protocol has a $jsii$date wrapper for this purpose (node's JSON parsing does *NOT* detect dates automatically in this way, so host libraries should not either).", - }, - "fqn": "jsii-calc.Entropy", - "initializer": { - "docs": { - "stability": "stable", - "summary": "Creates a new instance of Entropy.", - }, - "locationInModule": { - "filename": "lib/date.ts", - "line": 14, - }, - "parameters": [ - { - "docs": { - "summary": "your implementation of \`WallClock\`.", - }, - "name": "clock", - "type": { - "fqn": "jsii-calc.IWallClock", - }, - }, - ], - }, - "kind": "class", - "locationInModule": { - "filename": "lib/date.ts", - "line": 8, - }, - "methods": [ - { - "docs": { - "returns": "the time from the \`WallClock\`.", - "stability": "stable", - "summary": "Increases entropy by consuming time from the clock (yes, this is a long shot, please don't judge).", - }, - "locationInModule": { - "filename": "lib/date.ts", - "line": 22, - }, - "name": "increase", - "returns": { - "type": { - "primitive": "string", - }, - }, - }, - { - "abstract": true, - "docs": { - "returns": "\`word\`.", - "stability": "stable", - "summary": "Implement this method such that it returns \`word\`.", - }, - "locationInModule": { - "filename": "lib/date.ts", - "line": 47, - }, - "name": "repeat", - "parameters": [ - { - "docs": { - "summary": "the value to return.", - }, - "name": "word", - "type": { - "primitive": "string", - }, - }, - ], - "returns": { - "type": { - "primitive": "string", - }, - }, - }, - ], - "name": "Entropy", - "symbolId": "lib/date:Entropy", - }, - "jsii-calc.EnumDispenser": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.EnumDispenser", - "kind": "class", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 45, - }, - "methods": [ - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 51, - }, - "name": "randomIntegerLikeEnum", - "returns": { - "type": { - "fqn": "jsii-calc.AllTypesEnum", - }, - }, - "static": true, - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 46, - }, - "name": "randomStringLikeEnum", - "returns": { - "type": { - "fqn": "jsii-calc.StringEnum", - }, - }, - "static": true, - }, - ], - "name": "EnumDispenser", - "symbolId": "lib/compliance:EnumDispenser", - }, - "jsii-calc.EraseUndefinedHashValues": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.EraseUndefinedHashValues", - "initializer": { - "docs": { - "stability": "stable", - }, - }, - "kind": "class", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1704, - }, - "methods": [ - { - "docs": { - "remarks": "Used to check that undefined/null hash values -are being erased when sending values from native code to JS.", - "stability": "stable", - "summary": "Returns \`true\` if \`key\` is defined in \`opts\`.", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1709, - }, - "name": "doesKeyExist", - "parameters": [ - { - "name": "opts", - "type": { - "fqn": "jsii-calc.EraseUndefinedHashValuesOptions", - }, - }, - { - "name": "key", - "type": { - "primitive": "string", - }, - }, - ], - "returns": { - "type": { - "primitive": "boolean", - }, - }, - "static": true, - }, - { - "docs": { - "stability": "stable", - "summary": "We expect "prop1" to be erased.", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1729, - }, - "name": "prop1IsNull", - "returns": { - "type": { - "collection": { - "elementtype": { - "primitive": "any", - }, - "kind": "map", - }, - }, - }, - "static": true, - }, - { - "docs": { - "stability": "stable", - "summary": "We expect "prop2" to be erased.", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1719, - }, - "name": "prop2IsUndefined", - "returns": { - "type": { - "collection": { - "elementtype": { - "primitive": "any", - }, - "kind": "map", - }, - }, - }, - "static": true, - }, - ], - "name": "EraseUndefinedHashValues", - "symbolId": "lib/compliance:EraseUndefinedHashValues", - }, - "jsii-calc.EraseUndefinedHashValuesOptions": { - "assembly": "jsii-calc", - "datatype": true, - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.EraseUndefinedHashValuesOptions", - "kind": "interface", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1699, - }, - "name": "EraseUndefinedHashValuesOptions", - "properties": [ - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1700, - }, - "name": "option1", - "optional": true, - "type": { - "primitive": "string", - }, - }, - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1701, - }, - "name": "option2", - "optional": true, - "type": { - "primitive": "string", - }, - }, - ], - "symbolId": "lib/compliance:EraseUndefinedHashValuesOptions", - }, - "jsii-calc.ExperimentalClass": { - "assembly": "jsii-calc", - "docs": { - "stability": "experimental", - }, - "fqn": "jsii-calc.ExperimentalClass", - "initializer": { - "docs": { - "stability": "experimental", - }, - "locationInModule": { - "filename": "lib/stability.ts", - "line": 22, - }, - "parameters": [ - { - "name": "readonlyString", - "type": { - "primitive": "string", - }, - }, - { - "name": "mutableNumber", - "optional": true, - "type": { - "primitive": "number", - }, - }, - ], - }, - "kind": "class", - "locationInModule": { - "filename": "lib/stability.ts", - "line": 16, - }, - "methods": [ - { - "docs": { - "stability": "experimental", - }, - "locationInModule": { - "filename": "lib/stability.ts", - "line": 28, - }, - "name": "method", - }, - ], - "name": "ExperimentalClass", - "properties": [ - { - "docs": { - "stability": "experimental", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/stability.ts", - "line": 18, - }, - "name": "readonlyProperty", - "type": { - "primitive": "string", - }, - }, - { - "docs": { - "stability": "experimental", - }, - "locationInModule": { - "filename": "lib/stability.ts", - "line": 20, - }, - "name": "mutableProperty", - "optional": true, - "type": { - "primitive": "number", - }, - }, - ], - "symbolId": "lib/stability:ExperimentalClass", - }, - "jsii-calc.ExperimentalEnum": { - "assembly": "jsii-calc", - "docs": { - "stability": "experimental", - }, - "fqn": "jsii-calc.ExperimentalEnum", - "kind": "enum", - "locationInModule": { - "filename": "lib/stability.ts", - "line": 33, - }, - "members": [ - { - "docs": { - "stability": "experimental", - }, - "name": "OPTION_A", - }, - { - "docs": { - "stability": "experimental", - }, - "name": "OPTION_B", - }, - ], - "name": "ExperimentalEnum", - "symbolId": "lib/stability:ExperimentalEnum", - }, - "jsii-calc.ExperimentalStruct": { - "assembly": "jsii-calc", - "datatype": true, - "docs": { - "stability": "experimental", - }, - "fqn": "jsii-calc.ExperimentalStruct", - "kind": "interface", - "locationInModule": { - "filename": "lib/stability.ts", - "line": 4, - }, - "name": "ExperimentalStruct", - "properties": [ - { - "abstract": true, - "docs": { - "stability": "experimental", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/stability.ts", - "line": 6, - }, - "name": "readonlyProperty", - "type": { - "primitive": "string", - }, - }, - ], - "symbolId": "lib/stability:ExperimentalStruct", - }, - "jsii-calc.ExportedBaseClass": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.ExportedBaseClass", - "initializer": { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1575, - }, - "parameters": [ - { - "name": "success", - "type": { - "primitive": "boolean", - }, - }, - ], - }, - "kind": "class", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1574, - }, - "name": "ExportedBaseClass", - "properties": [ - { - "docs": { - "stability": "stable", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1575, - }, - "name": "success", - "type": { - "primitive": "boolean", - }, - }, - ], - "symbolId": "lib/compliance:ExportedBaseClass", - }, - "jsii-calc.ExtendsInternalInterface": { - "assembly": "jsii-calc", - "datatype": true, - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.ExtendsInternalInterface", - "kind": "interface", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1818, - }, - "name": "ExtendsInternalInterface", - "properties": [ - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1819, - }, - "name": "boom", - "type": { - "primitive": "boolean", - }, - }, - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1759, - }, - "name": "prop", - "type": { - "primitive": "string", - }, - }, - ], - "symbolId": "lib/compliance:ExtendsInternalInterface", - }, - "jsii-calc.ExternalClass": { - "assembly": "jsii-calc", - "docs": { - "custom": { - "external": "true", - }, - "stability": "stable", - }, - "fqn": "jsii-calc.ExternalClass", - "initializer": { - "docs": { - "custom": { - "external": "true", - }, - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/stability.ts", - "line": 131, - }, - "parameters": [ - { - "name": "readonlyString", - "type": { - "primitive": "string", - }, - }, - { - "name": "mutableNumber", - "optional": true, - "type": { - "primitive": "number", - }, - }, - ], - }, - "kind": "class", - "locationInModule": { - "filename": "lib/stability.ts", - "line": 125, - }, - "methods": [ - { - "docs": { - "custom": { - "external": "true", - }, - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/stability.ts", - "line": 136, - }, - "name": "method", - }, - ], - "name": "ExternalClass", - "properties": [ - { - "docs": { - "custom": { - "external": "true", - }, - "stability": "stable", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/stability.ts", - "line": 127, - }, - "name": "readonlyProperty", - "type": { - "primitive": "string", - }, - }, - { - "docs": { - "custom": { - "external": "true", - }, - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/stability.ts", - "line": 129, - }, - "name": "mutableProperty", - "optional": true, - "type": { - "primitive": "number", - }, - }, - ], - "symbolId": "lib/stability:ExternalClass", - }, - "jsii-calc.ExternalEnum": { - "assembly": "jsii-calc", - "docs": { - "custom": { - "external": "true", - }, - "stability": "stable", - }, - "fqn": "jsii-calc.ExternalEnum", - "kind": "enum", - "locationInModule": { - "filename": "lib/stability.ts", - "line": 141, - }, - "members": [ - { - "docs": { - "custom": { - "external": "true", - }, - "stability": "stable", - }, - "name": "OPTION_A", - }, - { - "docs": { - "custom": { - "external": "true", - }, - "stability": "stable", - }, - "name": "OPTION_B", - }, - ], - "name": "ExternalEnum", - "symbolId": "lib/stability:ExternalEnum", - }, - "jsii-calc.ExternalStruct": { - "assembly": "jsii-calc", - "datatype": true, - "docs": { - "custom": { - "external": "true", - }, - "stability": "stable", - }, - "fqn": "jsii-calc.ExternalStruct", - "kind": "interface", - "locationInModule": { - "filename": "lib/stability.ts", - "line": 113, - }, - "name": "ExternalStruct", - "properties": [ - { - "abstract": true, - "docs": { - "custom": { - "external": "true", - }, - "stability": "stable", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/stability.ts", - "line": 115, - }, - "name": "readonlyProperty", - "type": { - "primitive": "string", - }, - }, - ], - "symbolId": "lib/stability:ExternalStruct", - }, - "jsii-calc.FullCombo": { - "assembly": "jsii-calc", - "base": "jsii-calc.BaseClass", - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.FullCombo", - "interfaces": [ - "jsii-calc.IIndirectlyImplemented", - ], - "kind": "class", - "locationInModule": { - "filename": "lib/indirect-implementation.ts", - "line": 16, - }, - "name": "FullCombo", - "symbolId": "lib/indirect-implementation:FullCombo", - }, - "jsii-calc.GiveMeStructs": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.GiveMeStructs", - "initializer": { - "docs": { - "stability": "stable", - }, - }, - "kind": "class", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 556, - }, - "methods": [ - { - "docs": { - "stability": "stable", - "summary": "Accepts a struct of type DerivedStruct and returns a struct of type FirstStruct.", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 574, - }, - "name": "derivedToFirst", - "parameters": [ - { - "name": "derived", - "type": { - "fqn": "jsii-calc.DerivedStruct", - }, - }, - ], - "returns": { - "type": { - "fqn": "@scope/jsii-calc-lib.MyFirstStruct", - }, - }, - }, - { - "docs": { - "stability": "stable", - "summary": "Returns the boolean from a DerivedStruct struct.", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 567, - }, - "name": "readDerivedNonPrimitive", - "parameters": [ - { - "name": "derived", - "type": { - "fqn": "jsii-calc.DerivedStruct", - }, - }, - ], - "returns": { - "type": { - "fqn": "jsii-calc.DoubleTrouble", - }, - }, - }, - { - "docs": { - "stability": "stable", - "summary": "Returns the "anumber" from a MyFirstStruct struct;", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 560, - }, - "name": "readFirstNumber", - "parameters": [ - { - "name": "first", - "type": { - "fqn": "@scope/jsii-calc-lib.MyFirstStruct", - }, - }, - ], - "returns": { - "type": { - "primitive": "number", - }, - }, - }, - ], - "name": "GiveMeStructs", - "properties": [ - { - "docs": { - "stability": "stable", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 578, - }, - "name": "structLiteral", - "type": { - "fqn": "@scope/jsii-calc-lib.StructWithOnlyOptionals", - }, - }, - ], - "symbolId": "lib/compliance:GiveMeStructs", - }, - "jsii-calc.Greetee": { - "assembly": "jsii-calc", - "datatype": true, - "docs": { - "stability": "stable", - "summary": "These are some arguments you can pass to a method.", - }, - "fqn": "jsii-calc.Greetee", - "kind": "interface", - "locationInModule": { - "filename": "lib/documented.ts", - "line": 46, - }, - "name": "Greetee", - "properties": [ - { - "abstract": true, - "docs": { - "default": "world", - "stability": "stable", - "summary": "The name of the greetee.", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/documented.ts", - "line": 52, - }, - "name": "name", - "optional": true, - "type": { - "primitive": "string", - }, - }, - ], - "symbolId": "lib/documented:Greetee", - }, - "jsii-calc.GreetingAugmenter": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.GreetingAugmenter", - "initializer": { - "docs": { - "stability": "stable", - }, - }, - "kind": "class", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 532, - }, - "methods": [ - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 533, - }, - "name": "betterGreeting", - "parameters": [ - { - "name": "friendly", - "type": { - "fqn": "@scope/jsii-calc-lib.IFriendly", - }, - }, - ], - "returns": { - "type": { - "primitive": "string", - }, - }, - }, - ], - "name": "GreetingAugmenter", - "symbolId": "lib/compliance:GreetingAugmenter", - }, - "jsii-calc.IAnonymousImplementationProvider": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - "summary": "We can return an anonymous interface implementation from an override without losing the interface declarations.", - }, - "fqn": "jsii-calc.IAnonymousImplementationProvider", - "kind": "interface", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2271, - }, - "methods": [ - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2273, - }, - "name": "provideAsClass", - "returns": { - "type": { - "fqn": "jsii-calc.Implementation", - }, - }, - }, - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2272, - }, - "name": "provideAsInterface", - "returns": { - "type": { - "fqn": "jsii-calc.IAnonymouslyImplementMe", - }, - }, - }, - ], - "name": "IAnonymousImplementationProvider", - "symbolId": "lib/compliance:IAnonymousImplementationProvider", - }, - "jsii-calc.IAnonymouslyImplementMe": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.IAnonymouslyImplementMe", - "kind": "interface", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2291, - }, - "methods": [ - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2293, - }, - "name": "verb", - "returns": { - "type": { - "primitive": "string", - }, - }, - }, - ], - "name": "IAnonymouslyImplementMe", - "properties": [ - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2292, - }, - "name": "value", - "type": { - "primitive": "number", - }, - }, - ], - "symbolId": "lib/compliance:IAnonymouslyImplementMe", - }, - "jsii-calc.IAnotherPublicInterface": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.IAnotherPublicInterface", - "kind": "interface", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1839, - }, - "name": "IAnotherPublicInterface", - "properties": [ - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1840, - }, - "name": "a", - "type": { - "primitive": "string", - }, - }, - ], - "symbolId": "lib/compliance:IAnotherPublicInterface", - }, - "jsii-calc.IBell": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.IBell", - "kind": "interface", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2495, - }, - "methods": [ - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2496, - }, - "name": "ring", - }, - ], - "name": "IBell", - "symbolId": "lib/compliance:IBell", - }, - "jsii-calc.IBellRinger": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - "summary": "Takes the object parameter as an interface.", - }, - "fqn": "jsii-calc.IBellRinger", - "kind": "interface", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2484, - }, - "methods": [ - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2485, - }, - "name": "yourTurn", - "parameters": [ - { - "name": "bell", - "type": { - "fqn": "jsii-calc.IBell", - }, - }, - ], - }, - ], - "name": "IBellRinger", - "symbolId": "lib/compliance:IBellRinger", - }, - "jsii-calc.IConcreteBellRinger": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - "summary": "Takes the object parameter as a calss.", - }, - "fqn": "jsii-calc.IConcreteBellRinger", - "kind": "interface", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2491, - }, - "methods": [ - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2492, - }, - "name": "yourTurn", - "parameters": [ - { - "name": "bell", - "type": { - "fqn": "jsii-calc.Bell", - }, - }, - ], - }, - ], - "name": "IConcreteBellRinger", - "symbolId": "lib/compliance:IConcreteBellRinger", - }, - "jsii-calc.IDeprecatedInterface": { - "assembly": "jsii-calc", - "docs": { - "deprecated": "useless interface", - "stability": "deprecated", - }, - "fqn": "jsii-calc.IDeprecatedInterface", - "kind": "interface", - "locationInModule": { - "filename": "lib/stability.ts", - "line": 82, - }, - "methods": [ - { - "abstract": true, - "docs": { - "deprecated": "services no purpose", - "stability": "deprecated", - }, - "locationInModule": { - "filename": "lib/stability.ts", - "line": 86, - }, - "name": "method", - }, - ], - "name": "IDeprecatedInterface", - "properties": [ - { - "abstract": true, - "docs": { - "deprecated": "could be better", - "stability": "deprecated", - }, - "locationInModule": { - "filename": "lib/stability.ts", - "line": 84, - }, - "name": "mutableProperty", - "optional": true, - "type": { - "primitive": "number", - }, - }, - ], - "symbolId": "lib/stability:IDeprecatedInterface", - }, - "jsii-calc.IExperimentalInterface": { - "assembly": "jsii-calc", - "docs": { - "stability": "experimental", - }, - "fqn": "jsii-calc.IExperimentalInterface", - "kind": "interface", - "locationInModule": { - "filename": "lib/stability.ts", - "line": 9, - }, - "methods": [ - { - "abstract": true, - "docs": { - "stability": "experimental", - }, - "locationInModule": { - "filename": "lib/stability.ts", - "line": 13, - }, - "name": "method", - }, - ], - "name": "IExperimentalInterface", - "properties": [ - { - "abstract": true, - "docs": { - "stability": "experimental", - }, - "locationInModule": { - "filename": "lib/stability.ts", - "line": 11, - }, - "name": "mutableProperty", - "optional": true, - "type": { - "primitive": "number", - }, - }, - ], - "symbolId": "lib/stability:IExperimentalInterface", - }, - "jsii-calc.IExtendsPrivateInterface": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.IExtendsPrivateInterface", - "kind": "interface", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1830, - }, - "name": "IExtendsPrivateInterface", - "properties": [ - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1831, - }, - "name": "moreThings", - "type": { - "collection": { - "elementtype": { - "primitive": "string", - }, - "kind": "array", - }, - }, - }, - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1815, - }, - "name": "private", - "type": { - "primitive": "string", - }, - }, - ], - "symbolId": "lib/compliance:IExtendsPrivateInterface", - }, - "jsii-calc.IExternalInterface": { - "assembly": "jsii-calc", - "docs": { - "custom": { - "external": "true", - }, - "stability": "stable", - }, - "fqn": "jsii-calc.IExternalInterface", - "kind": "interface", - "locationInModule": { - "filename": "lib/stability.ts", - "line": 118, - }, - "methods": [ - { - "abstract": true, - "docs": { - "custom": { - "external": "true", - }, - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/stability.ts", - "line": 122, - }, - "name": "method", - }, - ], - "name": "IExternalInterface", - "properties": [ - { - "abstract": true, - "docs": { - "custom": { - "external": "true", - }, - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/stability.ts", - "line": 120, - }, - "name": "mutableProperty", - "optional": true, - "type": { - "primitive": "number", - }, - }, - ], - "symbolId": "lib/stability:IExternalInterface", - }, - "jsii-calc.IFriendlier": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - "summary": "Even friendlier classes can implement this interface.", - }, - "fqn": "jsii-calc.IFriendlier", - "interfaces": [ - "@scope/jsii-calc-lib.IFriendly", - ], - "kind": "interface", - "locationInModule": { - "filename": "lib/calculator.ts", - "line": 16, - }, - "methods": [ - { - "abstract": true, - "docs": { - "stability": "stable", - "summary": "Say farewell.", - }, - "locationInModule": { - "filename": "lib/calculator.ts", - "line": 26, - }, - "name": "farewell", - "returns": { - "type": { - "primitive": "string", - }, - }, - }, - { - "abstract": true, - "docs": { - "returns": "A goodbye blessing.", - "stability": "stable", - "summary": "Say goodbye.", - }, - "locationInModule": { - "filename": "lib/calculator.ts", - "line": 21, - }, - "name": "goodbye", - "returns": { - "type": { - "primitive": "string", - }, - }, - }, - ], - "name": "IFriendlier", - "symbolId": "lib/calculator:IFriendlier", - }, - "jsii-calc.IFriendlyRandomGenerator": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.IFriendlyRandomGenerator", - "interfaces": [ - "jsii-calc.IRandomNumberGenerator", - "@scope/jsii-calc-lib.IFriendly", - ], - "kind": "interface", - "locationInModule": { - "filename": "lib/calculator.ts", - "line": 40, - }, - "name": "IFriendlyRandomGenerator", - "symbolId": "lib/calculator:IFriendlyRandomGenerator", - }, - "jsii-calc.IIndirectlyImplemented": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.IIndirectlyImplemented", - "kind": "interface", - "locationInModule": { - "filename": "lib/indirect-implementation.ts", - "line": 1, - }, - "methods": [ - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/indirect-implementation.ts", - "line": 3, - }, - "name": "method", - "returns": { - "type": { - "primitive": "number", - }, - }, - }, - ], - "name": "IIndirectlyImplemented", - "properties": [ - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/indirect-implementation.ts", - "line": 2, - }, - "name": "property", - "type": { - "primitive": "string", - }, - }, - ], - "symbolId": "lib/indirect-implementation:IIndirectlyImplemented", - }, - "jsii-calc.IInterfaceImplementedByAbstractClass": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - "summary": "awslabs/jsii#220 Abstract return type.", - }, - "fqn": "jsii-calc.IInterfaceImplementedByAbstractClass", - "kind": "interface", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1298, - }, - "name": "IInterfaceImplementedByAbstractClass", - "properties": [ - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1299, - }, - "name": "propFromInterface", - "type": { - "primitive": "string", - }, - }, - ], - "symbolId": "lib/compliance:IInterfaceImplementedByAbstractClass", - }, - "jsii-calc.IInterfaceThatShouldNotBeADataType": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - "summary": "Even though this interface has only properties, it is disqualified from being a datatype because it inherits from an interface that is not a datatype.", - }, - "fqn": "jsii-calc.IInterfaceThatShouldNotBeADataType", - "interfaces": [ - "jsii-calc.IInterfaceWithMethods", - ], - "kind": "interface", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1404, - }, - "name": "IInterfaceThatShouldNotBeADataType", - "properties": [ - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1406, - }, - "name": "otherValue", - "type": { - "primitive": "string", - }, - }, - ], - "symbolId": "lib/compliance:IInterfaceThatShouldNotBeADataType", - }, - "jsii-calc.IInterfaceWithInternal": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.IInterfaceWithInternal", - "kind": "interface", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1770, - }, - "methods": [ - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1771, - }, - "name": "visible", - }, - ], - "name": "IInterfaceWithInternal", - "symbolId": "lib/compliance:IInterfaceWithInternal", - }, - "jsii-calc.IInterfaceWithMethods": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.IInterfaceWithMethods", - "kind": "interface", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1394, - }, - "methods": [ - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1397, - }, - "name": "doThings", - }, - ], - "name": "IInterfaceWithMethods", - "properties": [ - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1395, - }, - "name": "value", - "type": { - "primitive": "string", - }, - }, - ], - "symbolId": "lib/compliance:IInterfaceWithMethods", - }, - "jsii-calc.IInterfaceWithOptionalMethodArguments": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - "summary": "awslabs/jsii#175 Interface proxies (and builders) do not respect optional arguments in methods.", - }, - "fqn": "jsii-calc.IInterfaceWithOptionalMethodArguments", - "kind": "interface", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1276, - }, - "methods": [ - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1277, - }, - "name": "hello", - "parameters": [ - { - "name": "arg1", - "type": { - "primitive": "string", - }, - }, - { - "name": "arg2", - "optional": true, - "type": { - "primitive": "number", - }, - }, - ], - }, - ], - "name": "IInterfaceWithOptionalMethodArguments", - "symbolId": "lib/compliance:IInterfaceWithOptionalMethodArguments", - }, - "jsii-calc.IInterfaceWithProperties": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.IInterfaceWithProperties", - "kind": "interface", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 586, - }, - "name": "IInterfaceWithProperties", - "properties": [ - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 587, - }, - "name": "readOnlyString", - "type": { - "primitive": "string", - }, - }, - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 588, - }, - "name": "readWriteString", - "type": { - "primitive": "string", - }, - }, - ], - "symbolId": "lib/compliance:IInterfaceWithProperties", - }, - "jsii-calc.IInterfaceWithPropertiesExtension": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.IInterfaceWithPropertiesExtension", - "interfaces": [ - "jsii-calc.IInterfaceWithProperties", - ], - "kind": "interface", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 591, - }, - "name": "IInterfaceWithPropertiesExtension", - "properties": [ - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 593, - }, - "name": "foo", - "type": { - "primitive": "number", - }, - }, - ], - "symbolId": "lib/compliance:IInterfaceWithPropertiesExtension", - }, - "jsii-calc.IJSII417Derived": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.IJSII417Derived", - "interfaces": [ - "jsii-calc.IJSII417PublicBaseOfBase", - ], - "kind": "interface", - "locationInModule": { - "filename": "lib/erasures.ts", - "line": 43, - }, - "methods": [ - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/erasures.ts", - "line": 41, - }, - "name": "bar", - }, - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/erasures.ts", - "line": 44, - }, - "name": "baz", - }, - ], - "name": "IJSII417Derived", - "properties": [ - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/erasures.ts", - "line": 40, - }, - "name": "property", - "type": { - "primitive": "string", - }, - }, - ], - "symbolId": "lib/erasures:IJSII417Derived", - }, - "jsii-calc.IJSII417PublicBaseOfBase": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.IJSII417PublicBaseOfBase", - "kind": "interface", - "locationInModule": { - "filename": "lib/erasures.ts", - "line": 36, - }, - "methods": [ - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/erasures.ts", - "line": 37, - }, - "name": "foo", - }, - ], - "name": "IJSII417PublicBaseOfBase", - "properties": [ - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/erasures.ts", - "line": 34, - }, - "name": "hasRoot", - "type": { - "primitive": "boolean", - }, - }, - ], - "symbolId": "lib/erasures:IJSII417PublicBaseOfBase", - }, - "jsii-calc.IJavaReservedWordsInAnInterface": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.IJavaReservedWordsInAnInterface", - "kind": "interface", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 958, - }, - "methods": [ - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 959, - }, - "name": "abstract", - }, - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 960, - }, - "name": "assert", - }, - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 961, - }, - "name": "boolean", - }, - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 962, - }, - "name": "break", - }, - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 963, - }, - "name": "byte", - }, - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 964, - }, - "name": "case", - }, - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 965, - }, - "name": "catch", - }, - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 966, - }, - "name": "char", - }, - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 967, - }, - "name": "class", - }, - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 968, - }, - "name": "const", - }, - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 969, - }, - "name": "continue", - }, - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 970, - }, - "name": "default", - }, - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 972, - }, - "name": "do", - }, - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 971, - }, - "name": "double", - }, - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 973, - }, - "name": "else", - }, - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 974, - }, - "name": "enum", - }, - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 975, - }, - "name": "extends", - }, - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 976, - }, - "name": "false", - }, - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 977, - }, - "name": "final", - }, - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 978, - }, - "name": "finally", - }, - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 979, - }, - "name": "float", - }, - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 980, - }, - "name": "for", - }, - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 981, - }, - "name": "goto", - }, - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 982, - }, - "name": "if", - }, - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 983, - }, - "name": "implements", - }, - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 984, - }, - "name": "import", - }, - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 985, - }, - "name": "instanceof", - }, - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 986, - }, - "name": "int", - }, - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 987, - }, - "name": "interface", - }, - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 988, - }, - "name": "long", - }, - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 989, - }, - "name": "native", - }, - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 990, - }, - "name": "null", - }, - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 991, - }, - "name": "package", - }, - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 992, - }, - "name": "private", - }, - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 993, - }, - "name": "protected", - }, - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 994, - }, - "name": "public", - }, - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 995, - }, - "name": "return", - }, - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 996, - }, - "name": "short", - }, - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 997, - }, - "name": "static", - }, - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 998, - }, - "name": "strictfp", - }, - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 999, - }, - "name": "super", - }, - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1000, - }, - "name": "switch", - }, - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1001, - }, - "name": "synchronized", - }, - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1002, - }, - "name": "this", - }, - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1003, - }, - "name": "throw", - }, - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1004, - }, - "name": "throws", - }, - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1005, - }, - "name": "transient", - }, - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1006, - }, - "name": "true", - }, - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1007, - }, - "name": "try", - }, - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1008, - }, - "name": "void", - }, - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1009, - }, - "name": "volatile", - }, - ], - "name": "IJavaReservedWordsInAnInterface", - "properties": [ - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1010, - }, - "name": "while", - "type": { - "primitive": "string", - }, - }, - ], - "symbolId": "lib/compliance:IJavaReservedWordsInAnInterface", - }, - "jsii-calc.IJsii487External": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.IJsii487External", - "kind": "interface", - "locationInModule": { - "filename": "lib/erasures.ts", - "line": 52, - }, - "name": "IJsii487External", - "symbolId": "lib/erasures:IJsii487External", - }, - "jsii-calc.IJsii487External2": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.IJsii487External2", - "kind": "interface", - "locationInModule": { - "filename": "lib/erasures.ts", - "line": 54, - }, - "name": "IJsii487External2", - "symbolId": "lib/erasures:IJsii487External2", - }, - "jsii-calc.IJsii496": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.IJsii496", - "kind": "interface", - "locationInModule": { - "filename": "lib/erasures.ts", - "line": 65, - }, - "name": "IJsii496", - "symbolId": "lib/erasures:IJsii496", - }, - "jsii-calc.IMutableObjectLiteral": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.IMutableObjectLiteral", - "kind": "interface", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1347, - }, - "name": "IMutableObjectLiteral", - "properties": [ - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1348, - }, - "name": "value", - "type": { - "primitive": "string", - }, - }, - ], - "symbolId": "lib/compliance:IMutableObjectLiteral", - }, - "jsii-calc.INonInternalInterface": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.INonInternalInterface", - "interfaces": [ - "jsii-calc.IAnotherPublicInterface", - ], - "kind": "interface", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1848, - }, - "name": "INonInternalInterface", - "properties": [ - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1845, - }, - "name": "b", - "type": { - "primitive": "string", - }, - }, - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1849, - }, - "name": "c", - "type": { - "primitive": "string", - }, - }, - ], - "symbolId": "lib/compliance:INonInternalInterface", - }, - "jsii-calc.IObjectWithProperty": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - "summary": "Make sure that setters are properly called on objects with interfaces.", - }, - "fqn": "jsii-calc.IObjectWithProperty", - "kind": "interface", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2620, - }, - "methods": [ - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2622, - }, - "name": "wasSet", - "returns": { - "type": { - "primitive": "boolean", - }, - }, - }, - ], - "name": "IObjectWithProperty", - "properties": [ - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2621, - }, - "name": "property", - "type": { - "primitive": "string", - }, - }, - ], - "symbolId": "lib/compliance:IObjectWithProperty", - }, - "jsii-calc.IOptionalMethod": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - "summary": "Checks that optional result from interface method code generates correctly.", - }, - "fqn": "jsii-calc.IOptionalMethod", - "kind": "interface", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2809, - }, - "methods": [ - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2810, - }, - "name": "optional", - "returns": { - "optional": true, - "type": { - "primitive": "string", - }, - }, - }, - ], - "name": "IOptionalMethod", - "symbolId": "lib/compliance:IOptionalMethod", - }, - "jsii-calc.IPrivatelyImplemented": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.IPrivatelyImplemented", - "kind": "interface", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1571, - }, - "name": "IPrivatelyImplemented", - "properties": [ - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1572, - }, - "name": "success", - "type": { - "primitive": "boolean", - }, - }, - ], - "symbolId": "lib/compliance:IPrivatelyImplemented", - }, - "jsii-calc.IPublicInterface": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.IPublicInterface", - "kind": "interface", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1619, - }, - "methods": [ - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1620, - }, - "name": "bye", - "returns": { - "type": { - "primitive": "string", - }, - }, - }, - ], - "name": "IPublicInterface", - "symbolId": "lib/compliance:IPublicInterface", - }, - "jsii-calc.IPublicInterface2": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.IPublicInterface2", - "kind": "interface", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1623, - }, - "methods": [ - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1624, - }, - "name": "ciao", - "returns": { - "type": { - "primitive": "string", - }, - }, - }, - ], - "name": "IPublicInterface2", - "symbolId": "lib/compliance:IPublicInterface2", - }, - "jsii-calc.IRandomNumberGenerator": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - "summary": "Generates random numbers.", - }, - "fqn": "jsii-calc.IRandomNumberGenerator", - "kind": "interface", - "locationInModule": { - "filename": "lib/calculator.ts", - "line": 32, - }, - "methods": [ - { - "abstract": true, - "docs": { - "returns": "A random number.", - "stability": "stable", - "summary": "Returns another random number.", - }, - "locationInModule": { - "filename": "lib/calculator.ts", - "line": 37, - }, - "name": "next", - "returns": { - "type": { - "primitive": "number", - }, - }, - }, - ], - "name": "IRandomNumberGenerator", - "symbolId": "lib/calculator:IRandomNumberGenerator", - }, - "jsii-calc.IReturnJsii976": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - "summary": "Returns a subclass of a known class which implements an interface.", - }, - "fqn": "jsii-calc.IReturnJsii976", - "kind": "interface", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2551, - }, - "name": "IReturnJsii976", - "properties": [ - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2552, - }, - "name": "foo", - "type": { - "primitive": "number", - }, - }, - ], - "symbolId": "lib/compliance:IReturnJsii976", - }, - "jsii-calc.IReturnsNumber": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.IReturnsNumber", - "kind": "interface", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 639, - }, - "methods": [ - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 640, - }, - "name": "obtainNumber", - "returns": { - "type": { - "fqn": "@scope/jsii-calc-lib.IDoublable", - }, - }, - }, - ], - "name": "IReturnsNumber", - "properties": [ - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 642, - }, - "name": "numberProp", - "type": { - "fqn": "@scope/jsii-calc-lib.Number", - }, - }, - ], - "symbolId": "lib/compliance:IReturnsNumber", - }, - "jsii-calc.IStableInterface": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.IStableInterface", - "kind": "interface", - "locationInModule": { - "filename": "lib/stability.ts", - "line": 46, - }, - "methods": [ - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/stability.ts", - "line": 50, - }, - "name": "method", - }, - ], - "name": "IStableInterface", - "properties": [ - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/stability.ts", - "line": 48, - }, - "name": "mutableProperty", - "optional": true, - "type": { - "primitive": "number", - }, - }, - ], - "symbolId": "lib/stability:IStableInterface", - }, - "jsii-calc.IStructReturningDelegate": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - "summary": "Verifies that a "pure" implementation of an interface works correctly.", - }, - "fqn": "jsii-calc.IStructReturningDelegate", - "kind": "interface", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2738, - }, - "methods": [ - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2739, - }, - "name": "returnStruct", - "returns": { - "type": { - "fqn": "jsii-calc.StructB", - }, - }, - }, - ], - "name": "IStructReturningDelegate", - "symbolId": "lib/compliance:IStructReturningDelegate", - }, - "jsii-calc.IWallClock": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - "summary": "Implement this interface.", - }, - "fqn": "jsii-calc.IWallClock", - "kind": "interface", - "locationInModule": { - "filename": "lib/date.ts", - "line": 53, - }, - "methods": [ - { - "abstract": true, - "docs": { - "stability": "stable", - "summary": "Returns the current time, formatted as an ISO-8601 string.", - }, - "locationInModule": { - "filename": "lib/date.ts", - "line": 57, - }, - "name": "iso8601Now", - "returns": { - "type": { - "primitive": "string", - }, - }, - }, - ], - "name": "IWallClock", - "symbolId": "lib/date:IWallClock", - }, - "jsii-calc.ImplementInternalInterface": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.ImplementInternalInterface", - "initializer": { - "docs": { - "stability": "stable", - }, - }, - "kind": "class", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1822, - }, - "name": "ImplementInternalInterface", - "properties": [ - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1823, - }, - "name": "prop", - "type": { - "primitive": "string", - }, - }, - ], - "symbolId": "lib/compliance:ImplementInternalInterface", - }, - "jsii-calc.Implementation": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.Implementation", - "initializer": { - "docs": { - "stability": "stable", - }, - }, - "kind": "class", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2288, - }, - "name": "Implementation", - "properties": [ - { - "docs": { - "stability": "stable", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2289, - }, - "name": "value", - "type": { - "primitive": "number", - }, - }, - ], - "symbolId": "lib/compliance:Implementation", - }, - "jsii-calc.ImplementsInterfaceWithInternal": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.ImplementsInterfaceWithInternal", - "initializer": { - "docs": { - "stability": "stable", - }, - }, - "interfaces": [ - "jsii-calc.IInterfaceWithInternal", - ], - "kind": "class", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1777, - }, - "methods": [ - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1778, - }, - "name": "visible", - "overrides": "jsii-calc.IInterfaceWithInternal", - }, - ], - "name": "ImplementsInterfaceWithInternal", - "symbolId": "lib/compliance:ImplementsInterfaceWithInternal", - }, - "jsii-calc.ImplementsInterfaceWithInternalSubclass": { - "assembly": "jsii-calc", - "base": "jsii-calc.ImplementsInterfaceWithInternal", - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.ImplementsInterfaceWithInternalSubclass", - "initializer": { - "docs": { - "stability": "stable", - }, - }, - "kind": "class", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1796, - }, - "name": "ImplementsInterfaceWithInternalSubclass", - "symbolId": "lib/compliance:ImplementsInterfaceWithInternalSubclass", - }, - "jsii-calc.ImplementsPrivateInterface": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.ImplementsPrivateInterface", - "initializer": { - "docs": { - "stability": "stable", - }, - }, - "kind": "class", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1826, - }, - "name": "ImplementsPrivateInterface", - "properties": [ - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1827, - }, - "name": "private", - "type": { - "primitive": "string", - }, - }, - ], - "symbolId": "lib/compliance:ImplementsPrivateInterface", - }, - "jsii-calc.ImplictBaseOfBase": { - "assembly": "jsii-calc", - "datatype": true, - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.ImplictBaseOfBase", - "interfaces": [ - "@scope/jsii-calc-base.BaseProps", - ], - "kind": "interface", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1232, - }, - "name": "ImplictBaseOfBase", - "properties": [ - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1233, - }, - "name": "goo", - "type": { - "primitive": "date", - }, - }, - ], - "symbolId": "lib/compliance:ImplictBaseOfBase", - }, - "jsii-calc.InbetweenClass": { - "assembly": "jsii-calc", - "base": "jsii-calc.PublicClass", - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.InbetweenClass", - "initializer": { - "docs": { - "stability": "stable", - }, - }, - "interfaces": [ - "jsii-calc.IPublicInterface2", - ], - "kind": "class", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1626, - }, - "methods": [ - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1627, - }, - "name": "ciao", - "overrides": "jsii-calc.IPublicInterface2", - "returns": { - "type": { - "primitive": "string", - }, - }, - }, - ], - "name": "InbetweenClass", - "symbolId": "lib/compliance:InbetweenClass", - }, - "jsii-calc.InterfaceCollections": { - "assembly": "jsii-calc", - "docs": { - "remarks": "See: https://github.com/aws/jsii/issues/1196", - "stability": "stable", - "summary": "Verifies that collections of interfaces or structs are correctly handled.", - }, - "fqn": "jsii-calc.InterfaceCollections", - "kind": "class", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2772, - }, - "methods": [ - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2783, - }, - "name": "listOfInterfaces", - "returns": { - "type": { - "collection": { - "elementtype": { - "fqn": "jsii-calc.IBell", - }, - "kind": "array", - }, - }, - }, - "static": true, - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2773, - }, - "name": "listOfStructs", - "returns": { - "type": { - "collection": { - "elementtype": { - "fqn": "jsii-calc.StructA", - }, - "kind": "array", - }, - }, - }, - "static": true, - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2793, - }, - "name": "mapOfInterfaces", - "returns": { - "type": { - "collection": { - "elementtype": { - "fqn": "jsii-calc.IBell", - }, - "kind": "map", - }, - }, - }, - "static": true, - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2777, - }, - "name": "mapOfStructs", - "returns": { - "type": { - "collection": { - "elementtype": { - "fqn": "jsii-calc.StructA", - }, - "kind": "map", - }, - }, - }, - "static": true, - }, - ], - "name": "InterfaceCollections", - "symbolId": "lib/compliance:InterfaceCollections", - }, - "jsii-calc.InterfaceInNamespaceIncludesClasses.Foo": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.InterfaceInNamespaceIncludesClasses.Foo", - "initializer": { - "docs": { - "stability": "stable", - }, - }, - "kind": "class", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1263, - }, - "name": "Foo", - "namespace": "InterfaceInNamespaceIncludesClasses", - "properties": [ - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1264, - }, - "name": "bar", - "optional": true, - "type": { - "primitive": "string", - }, - }, - ], - "symbolId": "lib/compliance:InterfaceInNamespaceIncludesClasses.Foo", - }, - "jsii-calc.InterfaceInNamespaceIncludesClasses.Hello": { - "assembly": "jsii-calc", - "datatype": true, - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.InterfaceInNamespaceIncludesClasses.Hello", - "kind": "interface", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1267, - }, - "name": "Hello", - "namespace": "InterfaceInNamespaceIncludesClasses", - "properties": [ - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1268, - }, - "name": "foo", - "type": { - "primitive": "number", - }, - }, - ], - "symbolId": "lib/compliance:InterfaceInNamespaceIncludesClasses.Hello", - }, - "jsii-calc.InterfaceInNamespaceOnlyInterface.Hello": { - "assembly": "jsii-calc", - "datatype": true, - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.InterfaceInNamespaceOnlyInterface.Hello", - "kind": "interface", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1257, - }, - "name": "Hello", - "namespace": "InterfaceInNamespaceOnlyInterface", - "properties": [ - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1258, - }, - "name": "foo", - "type": { - "primitive": "number", - }, - }, - ], - "symbolId": "lib/compliance:InterfaceInNamespaceOnlyInterface.Hello", - }, - "jsii-calc.InterfacesMaker": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - "summary": "We can return arrays of interfaces See aws/aws-cdk#2362.", - }, - "fqn": "jsii-calc.InterfacesMaker", - "kind": "class", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2159, - }, - "methods": [ - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2160, - }, - "name": "makeInterfaces", - "parameters": [ - { - "name": "count", - "type": { - "primitive": "number", - }, - }, - ], - "returns": { - "type": { - "collection": { - "elementtype": { - "fqn": "@scope/jsii-calc-lib.IDoublable", - }, - "kind": "array", - }, - }, - }, - "static": true, - }, - ], - "name": "InterfacesMaker", - "symbolId": "lib/compliance:InterfacesMaker", - }, - "jsii-calc.Isomorphism": { - "abstract": true, - "assembly": "jsii-calc", - "docs": { - "remarks": "Create a subclass of this, and assert that \`this.myself()\` actually returns -\`this\` from within the constructor.", - "stability": "stable", - "summary": "Checks the "same instance" isomorphism is preserved within the constructor.", - }, - "fqn": "jsii-calc.Isomorphism", - "initializer": { - "docs": { - "stability": "stable", - }, - }, - "kind": "class", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2819, - }, - "methods": [ - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2820, - }, - "name": "myself", - "returns": { - "type": { - "fqn": "jsii-calc.Isomorphism", - }, - }, - }, - ], - "name": "Isomorphism", - "symbolId": "lib/compliance:Isomorphism", - }, - "jsii-calc.Issue2638": { - "assembly": "jsii-calc", - "docs": { - "see": "https://github.com/aws/jsii/issues/2638", - "stability": "stable", - "summary": "Docstrings with period.", - }, - "fqn": "jsii-calc.Issue2638", - "initializer": { - "docs": { - "remarks": "Second sentence. Third sentence.", - "stability": "stable", - "summary": "First sentence.", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 3013, - }, - }, - "kind": "class", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 3009, - }, - "name": "Issue2638", - "symbolId": "lib/compliance:Issue2638", - }, - "jsii-calc.Issue2638B": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.Issue2638B", - "initializer": { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 3019, - }, - }, - "kind": "class", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 3018, - }, - "name": "Issue2638B", - "symbolId": "lib/compliance:Issue2638B", - }, - "jsii-calc.JSII417Derived": { - "assembly": "jsii-calc", - "base": "jsii-calc.JSII417PublicBaseOfBase", - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.JSII417Derived", - "initializer": { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/erasures.ts", - "line": 17, - }, - "parameters": [ - { - "name": "property", - "type": { - "primitive": "string", - }, - }, - ], - }, - "kind": "class", - "locationInModule": { - "filename": "lib/erasures.ts", - "line": 24, - }, - "methods": [ - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/erasures.ts", - "line": 25, - }, - "name": "bar", - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/erasures.ts", - "line": 28, - }, - "name": "baz", - }, - ], - "name": "JSII417Derived", - "properties": [ - { - "docs": { - "stability": "stable", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/erasures.ts", - "line": 17, - }, - "name": "property", - "protected": true, - "type": { - "primitive": "string", - }, - }, - ], - "symbolId": "lib/erasures:JSII417Derived", - }, - "jsii-calc.JSII417PublicBaseOfBase": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.JSII417PublicBaseOfBase", - "initializer": { - "docs": { - "stability": "stable", - }, - }, - "kind": "class", - "locationInModule": { - "filename": "lib/erasures.ts", - "line": 8, - }, - "methods": [ - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/erasures.ts", - "line": 9, - }, - "name": "makeInstance", - "returns": { - "type": { - "fqn": "jsii-calc.JSII417PublicBaseOfBase", - }, - }, - "static": true, - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/erasures.ts", - "line": 12, - }, - "name": "foo", - }, - ], - "name": "JSII417PublicBaseOfBase", - "properties": [ - { - "docs": { - "stability": "stable", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/erasures.ts", - "line": 6, - }, - "name": "hasRoot", - "type": { - "primitive": "boolean", - }, - }, - ], - "symbolId": "lib/erasures:JSII417PublicBaseOfBase", - }, - "jsii-calc.JSObjectLiteralForInterface": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.JSObjectLiteralForInterface", - "initializer": { - "docs": { - "stability": "stable", - }, - }, - "kind": "class", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 517, - }, - "methods": [ - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 518, - }, - "name": "giveMeFriendly", - "returns": { - "type": { - "fqn": "@scope/jsii-calc-lib.IFriendly", - }, - }, - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 524, - }, - "name": "giveMeFriendlyGenerator", - "returns": { - "type": { - "fqn": "jsii-calc.IFriendlyRandomGenerator", - }, - }, - }, - ], - "name": "JSObjectLiteralForInterface", - "symbolId": "lib/compliance:JSObjectLiteralForInterface", - }, - "jsii-calc.JSObjectLiteralToNative": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.JSObjectLiteralToNative", - "initializer": { - "docs": { - "stability": "stable", - }, - }, - "kind": "class", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 247, - }, - "methods": [ - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 248, - }, - "name": "returnLiteral", - "returns": { - "type": { - "fqn": "jsii-calc.JSObjectLiteralToNativeClass", - }, - }, - }, - ], - "name": "JSObjectLiteralToNative", - "symbolId": "lib/compliance:JSObjectLiteralToNative", - }, - "jsii-calc.JSObjectLiteralToNativeClass": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.JSObjectLiteralToNativeClass", - "initializer": { - "docs": { - "stability": "stable", - }, - }, - "kind": "class", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 256, - }, - "name": "JSObjectLiteralToNativeClass", - "properties": [ - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 257, - }, - "name": "propA", - "type": { - "primitive": "string", - }, - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 258, - }, - "name": "propB", - "type": { - "primitive": "number", - }, - }, - ], - "symbolId": "lib/compliance:JSObjectLiteralToNativeClass", - }, - "jsii-calc.JavaReservedWords": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.JavaReservedWords", - "initializer": { - "docs": { - "stability": "stable", - }, - }, - "kind": "class", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 745, - }, - "methods": [ - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 746, - }, - "name": "abstract", - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 750, - }, - "name": "assert", - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 754, - }, - "name": "boolean", - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 758, - }, - "name": "break", - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 762, - }, - "name": "byte", - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 766, - }, - "name": "case", - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 770, - }, - "name": "catch", - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 774, - }, - "name": "char", - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 778, - }, - "name": "class", - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 782, - }, - "name": "const", - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 786, - }, - "name": "continue", - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 790, - }, - "name": "default", - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 798, - }, - "name": "do", - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 794, - }, - "name": "double", - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 802, - }, - "name": "else", - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 806, - }, - "name": "enum", - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 810, - }, - "name": "extends", - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 814, - }, - "name": "false", - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 818, - }, - "name": "final", - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 822, - }, - "name": "finally", - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 826, - }, - "name": "float", - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 830, - }, - "name": "for", - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 834, - }, - "name": "goto", - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 838, - }, - "name": "if", - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 842, - }, - "name": "implements", - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 846, - }, - "name": "import", - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 850, - }, - "name": "instanceof", - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 854, - }, - "name": "int", - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 858, - }, - "name": "interface", - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 862, - }, - "name": "long", - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 866, - }, - "name": "native", - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 870, - }, - "name": "new", - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 874, - }, - "name": "null", - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 878, - }, - "name": "package", - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 882, - }, - "name": "private", - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 886, - }, - "name": "protected", - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 890, - }, - "name": "public", - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 894, - }, - "name": "return", - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 898, - }, - "name": "short", - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 902, - }, - "name": "static", - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 906, - }, - "name": "strictfp", - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 910, - }, - "name": "super", - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 914, - }, - "name": "switch", - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 918, - }, - "name": "synchronized", - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 922, - }, - "name": "this", - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 926, - }, - "name": "throw", - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 930, - }, - "name": "throws", - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 934, - }, - "name": "transient", - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 938, - }, - "name": "true", - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 942, - }, - "name": "try", - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 946, - }, - "name": "void", - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 950, - }, - "name": "volatile", - }, - ], - "name": "JavaReservedWords", - "properties": [ - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 954, - }, - "name": "while", - "type": { - "primitive": "string", - }, - }, - ], - "symbolId": "lib/compliance:JavaReservedWords", - }, - "jsii-calc.Jsii487Derived": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.Jsii487Derived", - "initializer": { - "docs": { - "stability": "stable", - }, - }, - "interfaces": [ - "jsii-calc.IJsii487External2", - "jsii-calc.IJsii487External", - ], - "kind": "class", - "locationInModule": { - "filename": "lib/erasures.ts", - "line": 56, - }, - "name": "Jsii487Derived", - "symbolId": "lib/erasures:Jsii487Derived", - }, - "jsii-calc.Jsii496Derived": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.Jsii496Derived", - "initializer": { - "docs": { - "stability": "stable", - }, - }, - "interfaces": [ - "jsii-calc.IJsii496", - ], - "kind": "class", - "locationInModule": { - "filename": "lib/erasures.ts", - "line": 67, - }, - "name": "Jsii496Derived", - "symbolId": "lib/erasures:Jsii496Derived", - }, - "jsii-calc.JsiiAgent": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - "summary": "Host runtime version should be set via JSII_AGENT.", - }, - "fqn": "jsii-calc.JsiiAgent", - "initializer": { - "docs": { - "stability": "stable", - }, - }, - "kind": "class", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1589, - }, - "name": "JsiiAgent", - "properties": [ - { - "docs": { - "stability": "stable", - "summary": "Returns the value of the JSII_AGENT environment variable.", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1593, - }, - "name": "value", - "optional": true, - "static": true, - "type": { - "primitive": "string", - }, - }, - ], - "symbolId": "lib/compliance:JsiiAgent", - }, - "jsii-calc.JsonFormatter": { - "assembly": "jsii-calc", - "docs": { - "see": "https://github.com/aws/aws-cdk/issues/5066", - "stability": "stable", - "summary": "Make sure structs are un-decorated on the way in.", - }, - "fqn": "jsii-calc.JsonFormatter", - "kind": "class", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2653, - }, - "methods": [ - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2698, - }, - "name": "anyArray", - "returns": { - "type": { - "primitive": "any", - }, - }, - "static": true, - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2694, - }, - "name": "anyBooleanFalse", - "returns": { - "type": { - "primitive": "any", - }, - }, - "static": true, - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2690, - }, - "name": "anyBooleanTrue", - "returns": { - "type": { - "primitive": "any", - }, - }, - "static": true, - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2670, - }, - "name": "anyDate", - "returns": { - "type": { - "primitive": "any", - }, - }, - "static": true, - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2686, - }, - "name": "anyEmptyString", - "returns": { - "type": { - "primitive": "any", - }, - }, - "static": true, - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2666, - }, - "name": "anyFunction", - "returns": { - "type": { - "primitive": "any", - }, - }, - "static": true, - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2702, - }, - "name": "anyHash", - "returns": { - "type": { - "primitive": "any", - }, - }, - "static": true, - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2658, - }, - "name": "anyNull", - "returns": { - "type": { - "primitive": "any", - }, - }, - "static": true, - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2674, - }, - "name": "anyNumber", - "returns": { - "type": { - "primitive": "any", - }, - }, - "static": true, - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2706, - }, - "name": "anyRef", - "returns": { - "type": { - "primitive": "any", - }, - }, - "static": true, - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2682, - }, - "name": "anyString", - "returns": { - "type": { - "primitive": "any", - }, - }, - "static": true, - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2662, - }, - "name": "anyUndefined", - "returns": { - "type": { - "primitive": "any", - }, - }, - "static": true, - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2678, - }, - "name": "anyZero", - "returns": { - "type": { - "primitive": "any", - }, - }, - "static": true, - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2654, - }, - "name": "stringify", - "parameters": [ - { - "name": "value", - "optional": true, - "type": { - "primitive": "any", - }, - }, - ], - "returns": { - "optional": true, - "type": { - "primitive": "string", - }, - }, - "static": true, - }, - ], - "name": "JsonFormatter", - "symbolId": "lib/compliance:JsonFormatter", - }, - "jsii-calc.LevelOne": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - "summary": "Validates that nested classes get correct code generation for the occasional forward reference.", - }, - "fqn": "jsii-calc.LevelOne", - "initializer": { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2904, - }, - "parameters": [ - { - "name": "props", - "type": { - "fqn": "jsii-calc.LevelOneProps", - }, - }, - ], - }, - "kind": "class", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2903, - }, - "name": "LevelOne", - "properties": [ - { - "docs": { - "stability": "stable", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2904, - }, - "name": "props", - "type": { - "fqn": "jsii-calc.LevelOneProps", - }, - }, - ], - "symbolId": "lib/compliance:LevelOne", - }, - "jsii-calc.LevelOne.PropBooleanValue": { - "assembly": "jsii-calc", - "datatype": true, - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.LevelOne.PropBooleanValue", - "kind": "interface", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2914, - }, - "name": "PropBooleanValue", - "namespace": "LevelOne", - "properties": [ - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2915, - }, - "name": "value", - "type": { - "primitive": "boolean", - }, - }, - ], - "symbolId": "lib/compliance:LevelOne.PropBooleanValue", - }, - "jsii-calc.LevelOne.PropProperty": { - "assembly": "jsii-calc", - "datatype": true, - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.LevelOne.PropProperty", - "kind": "interface", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2910, - }, - "name": "PropProperty", - "namespace": "LevelOne", - "properties": [ - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2911, - }, - "name": "prop", - "type": { - "fqn": "jsii-calc.LevelOne.PropBooleanValue", - }, - }, - ], - "symbolId": "lib/compliance:LevelOne.PropProperty", - }, - "jsii-calc.LevelOneProps": { - "assembly": "jsii-calc", - "datatype": true, - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.LevelOneProps", - "kind": "interface", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2906, - }, - "name": "LevelOneProps", - "properties": [ - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2907, - }, - "name": "prop", - "type": { - "fqn": "jsii-calc.LevelOne.PropProperty", - }, - }, - ], - "symbolId": "lib/compliance:LevelOneProps", - }, - "jsii-calc.LoadBalancedFargateServiceProps": { - "assembly": "jsii-calc", - "datatype": true, - "docs": { - "stability": "stable", - "summary": "jsii#298: show default values in sphinx documentation, and respect newlines.", - }, - "fqn": "jsii-calc.LoadBalancedFargateServiceProps", - "kind": "interface", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1498, - }, - "name": "LoadBalancedFargateServiceProps", - "properties": [ - { - "abstract": true, - "docs": { - "default": "80", - "remarks": "Corresponds to container port mapping.", - "stability": "stable", - "summary": "The container port of the application load balancer attached to your Fargate service.", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1541, - }, - "name": "containerPort", - "optional": true, - "type": { - "primitive": "number", - }, - }, - { - "abstract": true, - "docs": { - "default": "256", - "remarks": "Valid values, which determines your range of valid values for the memory parameter: -256 (.25 vCPU) - Available memory values: 0.5GB, 1GB, 2GB -512 (.5 vCPU) - Available memory values: 1GB, 2GB, 3GB, 4GB -1024 (1 vCPU) - Available memory values: 2GB, 3GB, 4GB, 5GB, 6GB, 7GB, 8GB -2048 (2 vCPU) - Available memory values: Between 4GB and 16GB in 1GB increments -4096 (4 vCPU) - Available memory values: Between 8GB and 30GB in 1GB increments - -This default is set in the underlying FargateTaskDefinition construct.", - "stability": "stable", - "summary": "The number of cpu units used by the task.", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1512, - }, - "name": "cpu", - "optional": true, - "type": { - "primitive": "string", - }, - }, - { - "abstract": true, - "docs": { - "default": "512", - "remarks": "This field is required and you must use one of the following values, which determines your range of valid values -for the cpu parameter: - -0.5GB, 1GB, 2GB - Available cpu values: 256 (.25 vCPU) - -1GB, 2GB, 3GB, 4GB - Available cpu values: 512 (.5 vCPU) - -2GB, 3GB, 4GB, 5GB, 6GB, 7GB, 8GB - Available cpu values: 1024 (1 vCPU) - -Between 4GB and 16GB in 1GB increments - Available cpu values: 2048 (2 vCPU) - -Between 8GB and 30GB in 1GB increments - Available cpu values: 4096 (4 vCPU) - -This default is set in the underlying FargateTaskDefinition construct.", - "stability": "stable", - "summary": "The amount (in MiB) of memory used by the task.", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1534, - }, - "name": "memoryMiB", - "optional": true, - "type": { - "primitive": "string", - }, - }, - { - "abstract": true, - "docs": { - "default": "true", - "stability": "stable", - "summary": "Determines whether the Application Load Balancer will be internet-facing.", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1548, - }, - "name": "publicLoadBalancer", - "optional": true, - "type": { - "primitive": "boolean", - }, - }, - { - "abstract": true, - "docs": { - "default": "false", - "stability": "stable", - "summary": "Determines whether your Fargate Service will be assigned a public IP address.", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1555, - }, - "name": "publicTasks", - "optional": true, - "type": { - "primitive": "boolean", - }, - }, - ], - "symbolId": "lib/compliance:LoadBalancedFargateServiceProps", - }, - "jsii-calc.MethodNamedProperty": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.MethodNamedProperty", - "initializer": { - "docs": { - "stability": "stable", - }, - }, - "kind": "class", - "locationInModule": { - "filename": "lib/calculator.ts", - "line": 408, - }, - "methods": [ - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/calculator.ts", - "line": 409, - }, - "name": "property", - "returns": { - "type": { - "primitive": "string", - }, - }, - }, - ], - "name": "MethodNamedProperty", - "properties": [ - { - "docs": { - "stability": "stable", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/calculator.ts", - "line": 413, - }, - "name": "elite", - "type": { - "primitive": "number", - }, - }, - ], - "symbolId": "lib/calculator:MethodNamedProperty", - }, - "jsii-calc.Multiply": { - "assembly": "jsii-calc", - "base": "jsii-calc.BinaryOperation", - "docs": { - "stability": "stable", - "summary": "The "*" binary operation.", - }, - "fqn": "jsii-calc.Multiply", - "initializer": { - "docs": { - "stability": "stable", - "summary": "Creates a BinaryOperation.", - }, - "locationInModule": { - "filename": "lib/calculator.ts", - "line": 53, - }, - "parameters": [ - { - "docs": { - "summary": "Left-hand side operand.", - }, - "name": "lhs", - "type": { - "fqn": "@scope/jsii-calc-lib.NumericValue", - }, - }, - { - "docs": { - "summary": "Right-hand side operand.", - }, - "name": "rhs", - "type": { - "fqn": "@scope/jsii-calc-lib.NumericValue", - }, - }, - ], - }, - "interfaces": [ - "jsii-calc.IFriendlier", - "jsii-calc.IRandomNumberGenerator", - ], - "kind": "class", - "locationInModule": { - "filename": "lib/calculator.ts", - "line": 81, - }, - "methods": [ - { - "docs": { - "stability": "stable", - "summary": "Say farewell.", - }, - "locationInModule": { - "filename": "lib/calculator.ts", - "line": 97, - }, - "name": "farewell", - "overrides": "jsii-calc.IFriendlier", - "returns": { - "type": { - "primitive": "string", - }, - }, - }, - { - "docs": { - "stability": "stable", - "summary": "Say goodbye.", - }, - "locationInModule": { - "filename": "lib/calculator.ts", - "line": 93, - }, - "name": "goodbye", - "overrides": "jsii-calc.IFriendlier", - "returns": { - "type": { - "primitive": "string", - }, - }, - }, - { - "docs": { - "stability": "stable", - "summary": "Returns another random number.", - }, - "locationInModule": { - "filename": "lib/calculator.ts", - "line": 101, - }, - "name": "next", - "overrides": "jsii-calc.IRandomNumberGenerator", - "returns": { - "type": { - "primitive": "number", - }, - }, - }, - { - "docs": { - "stability": "stable", - "summary": "String representation of the value.", - }, - "locationInModule": { - "filename": "lib/calculator.ts", - "line": 89, - }, - "name": "toString", - "overrides": "@scope/jsii-calc-lib.Operation", - "returns": { - "type": { - "primitive": "string", - }, - }, - }, - ], - "name": "Multiply", - "properties": [ - { - "docs": { - "stability": "stable", - "summary": "The value.", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/calculator.ts", - "line": 85, - }, - "name": "value", - "overrides": "@scope/jsii-calc-lib.NumericValue", - "type": { - "primitive": "number", - }, - }, - ], - "symbolId": "lib/calculator:Multiply", - }, - "jsii-calc.Negate": { - "assembly": "jsii-calc", - "base": "jsii-calc.UnaryOperation", - "docs": { - "stability": "stable", - "summary": "The negation operation ("-value").", - }, - "fqn": "jsii-calc.Negate", - "initializer": { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/calculator.ts", - "line": 110, - }, - "parameters": [ - { - "name": "operand", - "type": { - "fqn": "@scope/jsii-calc-lib.NumericValue", - }, - }, - ], - }, - "interfaces": [ - "jsii-calc.IFriendlier", - ], - "kind": "class", - "locationInModule": { - "filename": "lib/calculator.ts", - "line": 118, - }, - "methods": [ - { - "docs": { - "stability": "stable", - "summary": "Say farewell.", - }, - "locationInModule": { - "filename": "lib/calculator.ts", - "line": 135, - }, - "name": "farewell", - "overrides": "jsii-calc.IFriendlier", - "returns": { - "type": { - "primitive": "string", - }, - }, - }, - { - "docs": { - "stability": "stable", - "summary": "Say goodbye.", - }, - "locationInModule": { - "filename": "lib/calculator.ts", - "line": 131, - }, - "name": "goodbye", - "overrides": "jsii-calc.IFriendlier", - "returns": { - "type": { - "primitive": "string", - }, - }, - }, - { - "docs": { - "stability": "stable", - "summary": "Say hello!", - }, - "locationInModule": { - "filename": "lib/calculator.ts", - "line": 127, - }, - "name": "hello", - "overrides": "@scope/jsii-calc-lib.IFriendly", - "returns": { - "type": { - "primitive": "string", - }, - }, - }, - { - "docs": { - "stability": "stable", - "summary": "String representation of the value.", - }, - "locationInModule": { - "filename": "lib/calculator.ts", - "line": 123, - }, - "name": "toString", - "overrides": "@scope/jsii-calc-lib.Operation", - "returns": { - "type": { - "primitive": "string", - }, - }, - }, - ], - "name": "Negate", - "properties": [ - { - "docs": { - "stability": "stable", - "summary": "The value.", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/calculator.ts", - "line": 119, - }, - "name": "value", - "overrides": "@scope/jsii-calc-lib.NumericValue", - "type": { - "primitive": "number", - }, - }, - ], - "symbolId": "lib/calculator:Negate", - }, - "jsii-calc.NestedClassInstance": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.NestedClassInstance", - "kind": "class", - "locationInModule": { - "filename": "lib/nested-class.ts", - "line": 3, - }, - "methods": [ - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/nested-class.ts", - "line": 4, - }, - "name": "makeInstance", - "returns": { - "type": { - "fqn": "@scope/jsii-calc-lib.submodule.NestingClass.NestedClass", - }, - }, - "static": true, - }, - ], - "name": "NestedClassInstance", - "symbolId": "lib/nested-class:NestedClassInstance", - }, - "jsii-calc.NestedStruct": { - "assembly": "jsii-calc", - "datatype": true, - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.NestedStruct", - "kind": "interface", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2527, - }, - "name": "NestedStruct", - "properties": [ - { - "abstract": true, - "docs": { - "stability": "stable", - "summary": "When provided, must be > 0.", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2531, - }, - "name": "numberProp", - "type": { - "primitive": "number", - }, - }, - ], - "symbolId": "lib/compliance:NestedStruct", - }, - "jsii-calc.NodeStandardLibrary": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - "summary": "Test fixture to verify that jsii modules can use the node standard library.", - }, - "fqn": "jsii-calc.NodeStandardLibrary", - "initializer": { - "docs": { - "stability": "stable", - }, - }, - "kind": "class", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1182, - }, - "methods": [ - { - "docs": { - "returns": ""6a2da20943931e9834fc12cfe5bb47bbd9ae43489a30726962b576f4e3993e50"", - "stability": "stable", - "summary": "Uses node.js "crypto" module to calculate sha256 of a string.", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1213, - }, - "name": "cryptoSha256", - "returns": { - "type": { - "primitive": "string", - }, - }, - }, - { - "async": true, - "docs": { - "returns": ""Hello, resource!"", - "stability": "stable", - "summary": "Reads a local resource file (resource.txt) asynchronously.", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1187, - }, - "name": "fsReadFile", - "returns": { - "type": { - "primitive": "string", - }, - }, - }, - { - "docs": { - "returns": ""Hello, resource! SYNC!"", - "stability": "stable", - "summary": "Sync version of fsReadFile.", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1196, - }, - "name": "fsReadFileSync", - "returns": { - "type": { - "primitive": "string", - }, - }, - }, - ], - "name": "NodeStandardLibrary", - "properties": [ - { - "docs": { - "stability": "stable", - "summary": "Returns the current os.platform() from the "os" node module.", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1205, - }, - "name": "osPlatform", - "type": { - "primitive": "string", - }, - }, - ], - "symbolId": "lib/compliance:NodeStandardLibrary", - }, - "jsii-calc.NullShouldBeTreatedAsUndefined": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - "summary": "jsii#282, aws-cdk#157: null should be treated as "undefined".", - }, - "fqn": "jsii-calc.NullShouldBeTreatedAsUndefined", - "initializer": { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1428, - }, - "parameters": [ - { - "name": "_param1", - "type": { - "primitive": "string", - }, - }, - { - "name": "optional", - "optional": true, - "type": { - "primitive": "any", - }, - }, - ], - }, - "kind": "class", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1425, - }, - "methods": [ - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1436, - }, - "name": "giveMeUndefined", - "parameters": [ - { - "name": "value", - "optional": true, - "type": { - "primitive": "any", - }, - }, - ], - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1446, - }, - "name": "giveMeUndefinedInsideAnObject", - "parameters": [ - { - "name": "input", - "type": { - "fqn": "jsii-calc.NullShouldBeTreatedAsUndefinedData", - }, - }, - ], - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1475, - }, - "name": "verifyPropertyIsUndefined", - }, - ], - "name": "NullShouldBeTreatedAsUndefined", - "properties": [ - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1426, - }, - "name": "changeMeToUndefined", - "optional": true, - "type": { - "primitive": "string", - }, - }, - ], - "symbolId": "lib/compliance:NullShouldBeTreatedAsUndefined", - }, - "jsii-calc.NullShouldBeTreatedAsUndefinedData": { - "assembly": "jsii-calc", - "datatype": true, - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.NullShouldBeTreatedAsUndefinedData", - "kind": "interface", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1484, - }, - "name": "NullShouldBeTreatedAsUndefinedData", - "properties": [ - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1486, - }, - "name": "arrayWithThreeElementsAndUndefinedAsSecondArgument", - "type": { - "collection": { - "elementtype": { - "primitive": "any", - }, - "kind": "array", - }, - }, - }, - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1485, - }, - "name": "thisShouldBeUndefined", - "optional": true, - "type": { - "primitive": "any", - }, - }, - ], - "symbolId": "lib/compliance:NullShouldBeTreatedAsUndefinedData", - }, - "jsii-calc.NumberGenerator": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - "summary": "This allows us to test that a reference can be stored for objects that implement interfaces.", - }, - "fqn": "jsii-calc.NumberGenerator", - "initializer": { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 506, - }, - "parameters": [ - { - "name": "generator", - "type": { - "fqn": "jsii-calc.IRandomNumberGenerator", - }, - }, - ], - }, - "kind": "class", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 505, - }, - "methods": [ - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 512, - }, - "name": "isSameGenerator", - "parameters": [ - { - "name": "gen", - "type": { - "fqn": "jsii-calc.IRandomNumberGenerator", - }, - }, - ], - "returns": { - "type": { - "primitive": "boolean", - }, - }, - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 508, - }, - "name": "nextTimes100", - "returns": { - "type": { - "primitive": "number", - }, - }, - }, - ], - "name": "NumberGenerator", - "properties": [ - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 506, - }, - "name": "generator", - "type": { - "fqn": "jsii-calc.IRandomNumberGenerator", - }, - }, - ], - "symbolId": "lib/compliance:NumberGenerator", - }, - "jsii-calc.ObjectRefsInCollections": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - "summary": "Verify that object references can be passed inside collections.", - }, - "fqn": "jsii-calc.ObjectRefsInCollections", - "initializer": { - "docs": { - "stability": "stable", - }, - }, - "kind": "class", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 264, - }, - "methods": [ - { - "docs": { - "stability": "stable", - "summary": "Returns the sum of all values.", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 268, - }, - "name": "sumFromArray", - "parameters": [ - { - "name": "values", - "type": { - "collection": { - "elementtype": { - "fqn": "@scope/jsii-calc-lib.NumericValue", - }, - "kind": "array", - }, - }, - }, - ], - "returns": { - "type": { - "primitive": "number", - }, - }, - }, - { - "docs": { - "stability": "stable", - "summary": "Returns the sum of all values in a map.", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 279, - }, - "name": "sumFromMap", - "parameters": [ - { - "name": "values", - "type": { - "collection": { - "elementtype": { - "fqn": "@scope/jsii-calc-lib.NumericValue", - }, - "kind": "map", - }, - }, - }, - ], - "returns": { - "type": { - "primitive": "number", - }, - }, - }, - ], - "name": "ObjectRefsInCollections", - "symbolId": "lib/compliance:ObjectRefsInCollections", - }, - "jsii-calc.ObjectWithPropertyProvider": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.ObjectWithPropertyProvider", - "kind": "class", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2624, - }, - "methods": [ - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2625, - }, - "name": "provide", - "returns": { - "type": { - "fqn": "jsii-calc.IObjectWithProperty", - }, - }, - "static": true, - }, - ], - "name": "ObjectWithPropertyProvider", - "symbolId": "lib/compliance:ObjectWithPropertyProvider", - }, - "jsii-calc.Old": { - "assembly": "jsii-calc", - "docs": { - "deprecated": "Use the new class or the old class whatever you want because -whatever you like is always the best", - "stability": "deprecated", - "summary": "Old class.", - }, - "fqn": "jsii-calc.Old", - "initializer": { - "docs": { - "stability": "stable", - }, - }, - "kind": "class", - "locationInModule": { - "filename": "lib/documented.ts", - "line": 61, - }, - "methods": [ - { - "docs": { - "stability": "deprecated", - "summary": "Doo wop that thing.", - }, - "locationInModule": { - "filename": "lib/documented.ts", - "line": 65, - }, - "name": "doAThing", - }, - ], - "name": "Old", - "symbolId": "lib/documented:Old", - }, - "jsii-calc.OptionalArgumentInvoker": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.OptionalArgumentInvoker", - "initializer": { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1280, - }, - "parameters": [ - { - "name": "delegate", - "type": { - "fqn": "jsii-calc.IInterfaceWithOptionalMethodArguments", - }, - }, - ], - }, - "kind": "class", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1279, - }, - "methods": [ - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1288, - }, - "name": "invokeWithOptional", - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1284, - }, - "name": "invokeWithoutOptional", - }, - ], - "name": "OptionalArgumentInvoker", - "symbolId": "lib/compliance:OptionalArgumentInvoker", - }, - "jsii-calc.OptionalConstructorArgument": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.OptionalConstructorArgument", - "initializer": { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 310, - }, - "parameters": [ - { - "name": "arg1", - "type": { - "primitive": "number", - }, - }, - { - "name": "arg2", - "type": { - "primitive": "string", - }, - }, - { - "name": "arg3", - "optional": true, - "type": { - "primitive": "date", - }, - }, - ], - }, - "kind": "class", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 309, - }, - "name": "OptionalConstructorArgument", - "properties": [ - { - "docs": { - "stability": "stable", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 311, - }, - "name": "arg1", - "type": { - "primitive": "number", - }, - }, - { - "docs": { - "stability": "stable", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 312, - }, - "name": "arg2", - "type": { - "primitive": "string", - }, - }, - { - "docs": { - "stability": "stable", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 313, - }, - "name": "arg3", - "optional": true, - "type": { - "primitive": "date", - }, - }, - ], - "symbolId": "lib/compliance:OptionalConstructorArgument", - }, - "jsii-calc.OptionalStruct": { - "assembly": "jsii-calc", - "datatype": true, - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.OptionalStruct", - "kind": "interface", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1930, - }, - "name": "OptionalStruct", - "properties": [ - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1931, - }, - "name": "field", - "optional": true, - "type": { - "primitive": "string", - }, - }, - ], - "symbolId": "lib/compliance:OptionalStruct", - }, - "jsii-calc.OptionalStructConsumer": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.OptionalStructConsumer", - "initializer": { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1925, - }, - "parameters": [ - { - "name": "optionalStruct", - "optional": true, - "type": { - "fqn": "jsii-calc.OptionalStruct", - }, - }, - ], - }, - "kind": "class", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1921, - }, - "name": "OptionalStructConsumer", - "properties": [ - { - "docs": { - "stability": "stable", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1922, - }, - "name": "parameterWasUndefined", - "type": { - "primitive": "boolean", - }, - }, - { - "docs": { - "stability": "stable", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1923, - }, - "name": "fieldValue", - "optional": true, - "type": { - "primitive": "string", - }, - }, - ], - "symbolId": "lib/compliance:OptionalStructConsumer", - }, - "jsii-calc.OverridableProtectedMember": { - "assembly": "jsii-calc", - "docs": { - "see": "https://github.com/aws/jsii/issues/903", - "stability": "stable", - }, - "fqn": "jsii-calc.OverridableProtectedMember", - "initializer": { - "docs": { - "stability": "stable", - }, - }, - "kind": "class", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2198, - }, - "methods": [ - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2210, - }, - "name": "overrideMe", - "protected": true, - "returns": { - "type": { - "primitive": "string", - }, - }, - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2206, - }, - "name": "switchModes", - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2202, - }, - "name": "valueFromProtected", - "returns": { - "type": { - "primitive": "string", - }, - }, - }, - ], - "name": "OverridableProtectedMember", - "properties": [ - { - "docs": { - "stability": "stable", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2199, - }, - "name": "overrideReadOnly", - "protected": true, - "type": { - "primitive": "string", - }, - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2200, - }, - "name": "overrideReadWrite", - "protected": true, - "type": { - "primitive": "string", - }, - }, - ], - "symbolId": "lib/compliance:OverridableProtectedMember", - }, - "jsii-calc.OverrideReturnsObject": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.OverrideReturnsObject", - "initializer": { - "docs": { - "stability": "stable", - }, - }, - "kind": "class", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 645, - }, - "methods": [ - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 646, - }, - "name": "test", - "parameters": [ - { - "name": "obj", - "type": { - "fqn": "jsii-calc.IReturnsNumber", - }, - }, - ], - "returns": { - "type": { - "primitive": "number", - }, - }, - }, - ], - "name": "OverrideReturnsObject", - "symbolId": "lib/compliance:OverrideReturnsObject", - }, - "jsii-calc.ParamShadowsBuiltins": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - "summary": "Validate that parameters named "str" or "builtins" do not shadow the actual type names in Python.", - }, - "fqn": "jsii-calc.ParamShadowsBuiltins", - "initializer": { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 3117, - }, - "parameters": [ - { - "docs": { - "summary": "should be set to something that is NOT a valid expression in Python (e.g: "\${NOPE}"").", - }, - "name": "builtins", - "type": { - "primitive": "string", - }, - }, - { - "docs": { - "summary": "should be set to something that is NOT a valid expression in Python (e.g: "\${NOPE}"").", - }, - "name": "str", - "type": { - "primitive": "string", - }, - }, - { - "docs": { - "summary": "should be set to valid values.", - }, - "name": "props", - "type": { - "fqn": "jsii-calc.ParamShadowsBuiltinsProps", - }, - }, - ], - }, - "kind": "class", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 3111, - }, - "name": "ParamShadowsBuiltins", - "symbolId": "lib/compliance:ParamShadowsBuiltins", - }, - "jsii-calc.ParamShadowsBuiltinsProps": { - "assembly": "jsii-calc", - "datatype": true, - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.ParamShadowsBuiltinsProps", - "kind": "interface", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 3129, - }, - "name": "ParamShadowsBuiltinsProps", - "properties": [ - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 3131, - }, - "name": "booleanProperty", - "type": { - "primitive": "boolean", - }, - }, - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 3130, - }, - "name": "stringProperty", - "type": { - "primitive": "string", - }, - }, - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 3132, - }, - "name": "structProperty", - "type": { - "fqn": "jsii-calc.StructA", - }, - }, - ], - "symbolId": "lib/compliance:ParamShadowsBuiltinsProps", - }, - "jsii-calc.ParamShadowsScope": { - "assembly": "jsii-calc", - "docs": { - "see": "https://github.com/aws/aws-cdk/issues/22975", - "stability": "stable", - "summary": "Validate that namespaces being shadowed by local variables does not cause type checking issues.", - }, - "fqn": "jsii-calc.ParamShadowsScope", - "initializer": { - "docs": { - "stability": "stable", - }, - }, - "kind": "class", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 3100, - }, - "methods": [ - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 3102, - }, - "name": "useScope", - "parameters": [ - { - "name": "scope", - "type": { - "fqn": "@scope/jsii-calc-lib.Number", - }, - }, - ], - "returns": { - "type": { - "fqn": "@scope/jsii-calc-lib.Number", - }, - }, - }, - ], - "name": "ParamShadowsScope", - "symbolId": "lib/compliance:ParamShadowsScope", - }, - "jsii-calc.ParentStruct982": { - "assembly": "jsii-calc", - "datatype": true, - "docs": { - "stability": "stable", - "summary": "https://github.com/aws/jsii/issues/982.", - }, - "fqn": "jsii-calc.ParentStruct982", - "kind": "interface", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2576, - }, - "name": "ParentStruct982", - "properties": [ - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2577, - }, - "name": "foo", - "type": { - "primitive": "string", - }, - }, - ], - "symbolId": "lib/compliance:ParentStruct982", - }, - "jsii-calc.PartiallyInitializedThisConsumer": { - "abstract": true, - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.PartiallyInitializedThisConsumer", - "initializer": { - "docs": { - "stability": "stable", - }, - }, - "kind": "class", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1896, - }, - "methods": [ - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1897, - }, - "name": "consumePartiallyInitializedThis", - "parameters": [ - { - "name": "obj", - "type": { - "fqn": "jsii-calc.ConstructorPassesThisOut", - }, - }, - { - "name": "dt", - "type": { - "primitive": "date", - }, - }, - { - "name": "ev", - "type": { - "fqn": "jsii-calc.AllTypesEnum", - }, - }, - ], - "returns": { - "type": { - "primitive": "string", - }, - }, - }, - ], - "name": "PartiallyInitializedThisConsumer", - "symbolId": "lib/compliance:PartiallyInitializedThisConsumer", - }, - "jsii-calc.Polymorphism": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.Polymorphism", - "initializer": { - "docs": { - "stability": "stable", - }, - }, - "kind": "class", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 495, - }, - "methods": [ - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 496, - }, - "name": "sayHello", - "parameters": [ - { - "name": "friendly", - "type": { - "fqn": "@scope/jsii-calc-lib.IFriendly", - }, - }, - ], - "returns": { - "type": { - "primitive": "string", - }, - }, - }, - ], - "name": "Polymorphism", - "symbolId": "lib/compliance:Polymorphism", - }, - "jsii-calc.Power": { - "assembly": "jsii-calc", - "base": "jsii-calc.composition.CompositeOperation", - "docs": { - "stability": "stable", - "summary": "The power operation.", - }, - "fqn": "jsii-calc.Power", - "initializer": { - "docs": { - "stability": "stable", - "summary": "Creates a Power operation.", - }, - "locationInModule": { - "filename": "lib/calculator.ts", - "line": 236, - }, - "parameters": [ - { - "docs": { - "summary": "The base of the power.", - }, - "name": "base", - "type": { - "fqn": "@scope/jsii-calc-lib.NumericValue", - }, - }, - { - "docs": { - "summary": "The number of times to multiply.", - }, - "name": "pow", - "type": { - "fqn": "@scope/jsii-calc-lib.NumericValue", - }, - }, - ], - }, - "kind": "class", - "locationInModule": { - "filename": "lib/calculator.ts", - "line": 230, - }, - "name": "Power", - "properties": [ - { - "docs": { - "stability": "stable", - "summary": "The base of the power.", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/calculator.ts", - "line": 237, - }, - "name": "base", - "type": { - "fqn": "@scope/jsii-calc-lib.NumericValue", - }, - }, - { - "docs": { - "remarks": "Must be implemented by derived classes.", - "stability": "stable", - "summary": "The expression that this operation consists of.", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/calculator.ts", - "line": 243, - }, - "name": "expression", - "overrides": "jsii-calc.composition.CompositeOperation", - "type": { - "fqn": "@scope/jsii-calc-lib.NumericValue", - }, - }, - { - "docs": { - "stability": "stable", - "summary": "The number of times to multiply.", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/calculator.ts", - "line": 238, - }, - "name": "pow", - "type": { - "fqn": "@scope/jsii-calc-lib.NumericValue", - }, - }, - ], - "symbolId": "lib/calculator:Power", - }, - "jsii-calc.PromiseNothing": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.PromiseNothing", - "initializer": { - "docs": { - "stability": "stable", - }, - }, - "kind": "class", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 3135, - }, - "methods": [ - { - "async": true, - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 3136, - }, - "name": "promiseIt", - "static": true, - }, - { - "async": true, - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 3140, - }, - "name": "instancePromiseIt", - }, - ], - "name": "PromiseNothing", - "symbolId": "lib/compliance:PromiseNothing", - }, - "jsii-calc.PropertyNamedProperty": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - "summary": "Reproduction for https://github.com/aws/jsii/issues/1113 Where a method or property named "property" would result in impossible to load Python code.", - }, - "fqn": "jsii-calc.PropertyNamedProperty", - "initializer": { - "docs": { - "stability": "stable", - }, - }, - "kind": "class", - "locationInModule": { - "filename": "lib/calculator.ts", - "line": 404, - }, - "name": "PropertyNamedProperty", - "properties": [ - { - "docs": { - "stability": "stable", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/calculator.ts", - "line": 405, - }, - "name": "property", - "type": { - "primitive": "string", - }, - }, - { - "docs": { - "stability": "stable", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/calculator.ts", - "line": 406, - }, - "name": "yetAnoterOne", - "type": { - "primitive": "boolean", - }, - }, - ], - "symbolId": "lib/calculator:PropertyNamedProperty", - }, - "jsii-calc.PublicClass": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.PublicClass", - "initializer": { - "docs": { - "stability": "stable", - }, - }, - "kind": "class", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1614, - }, - "methods": [ - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1615, - }, - "name": "hello", - }, - ], - "name": "PublicClass", - "symbolId": "lib/compliance:PublicClass", - }, - "jsii-calc.PythonReservedWords": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.PythonReservedWords", - "initializer": { - "docs": { - "stability": "stable", - }, - }, - "kind": "class", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1013, - }, - "methods": [ - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1014, - }, - "name": "and", - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1018, - }, - "name": "as", - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1022, - }, - "name": "assert", - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1026, - }, - "name": "async", - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1030, - }, - "name": "await", - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1034, - }, - "name": "break", - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1038, - }, - "name": "class", - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1042, - }, - "name": "continue", - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1046, - }, - "name": "def", - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1050, - }, - "name": "del", - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1054, - }, - "name": "elif", - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1058, - }, - "name": "else", - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1062, - }, - "name": "except", - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1066, - }, - "name": "finally", - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1070, - }, - "name": "for", - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1074, - }, - "name": "from", - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1078, - }, - "name": "global", - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1082, - }, - "name": "if", - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1086, - }, - "name": "import", - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1090, - }, - "name": "in", - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1094, - }, - "name": "is", - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1098, - }, - "name": "lambda", - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1102, - }, - "name": "nonlocal", - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1106, - }, - "name": "not", - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1110, - }, - "name": "or", - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1114, - }, - "name": "pass", - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1118, - }, - "name": "raise", - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1122, - }, - "name": "return", - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1126, - }, - "name": "try", - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1130, - }, - "name": "while", - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1134, - }, - "name": "with", - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1138, - }, - "name": "yield", - }, - ], - "name": "PythonReservedWords", - "symbolId": "lib/compliance:PythonReservedWords", - }, - "jsii-calc.PythonSelf.ClassWithSelf": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.PythonSelf.ClassWithSelf", - "initializer": { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1148, - }, - "parameters": [ - { - "name": "self", - "type": { - "primitive": "string", - }, - }, - ], - }, - "kind": "class", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1147, - }, - "methods": [ - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1150, - }, - "name": "method", - "parameters": [ - { - "name": "self", - "type": { - "primitive": "number", - }, - }, - ], - "returns": { - "type": { - "primitive": "string", - }, - }, - }, - ], - "name": "ClassWithSelf", - "namespace": "PythonSelf", - "properties": [ - { - "docs": { - "stability": "stable", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1148, - }, - "name": "self", - "type": { - "primitive": "string", - }, - }, - ], - "symbolId": "lib/compliance:PythonSelf.ClassWithSelf", - }, - "jsii-calc.PythonSelf.ClassWithSelfKwarg": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.PythonSelf.ClassWithSelfKwarg", - "initializer": { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1156, - }, - "parameters": [ - { - "name": "props", - "type": { - "fqn": "jsii-calc.PythonSelf.StructWithSelf", - }, - }, - ], - }, - "kind": "class", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1155, - }, - "name": "ClassWithSelfKwarg", - "namespace": "PythonSelf", - "properties": [ - { - "docs": { - "stability": "stable", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1156, - }, - "name": "props", - "type": { - "fqn": "jsii-calc.PythonSelf.StructWithSelf", - }, - }, - ], - "symbolId": "lib/compliance:PythonSelf.ClassWithSelfKwarg", - }, - "jsii-calc.PythonSelf.IInterfaceWithSelf": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.PythonSelf.IInterfaceWithSelf", - "kind": "interface", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1163, - }, - "methods": [ - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1164, - }, - "name": "method", - "parameters": [ - { - "name": "self", - "type": { - "primitive": "number", - }, - }, - ], - "returns": { - "type": { - "primitive": "string", - }, - }, - }, - ], - "name": "IInterfaceWithSelf", - "namespace": "PythonSelf", - "symbolId": "lib/compliance:PythonSelf.IInterfaceWithSelf", - }, - "jsii-calc.PythonSelf.StructWithSelf": { - "assembly": "jsii-calc", - "datatype": true, - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.PythonSelf.StructWithSelf", - "kind": "interface", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1159, - }, - "name": "StructWithSelf", - "namespace": "PythonSelf", - "properties": [ - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1160, - }, - "name": "self", - "type": { - "primitive": "string", - }, - }, - ], - "symbolId": "lib/compliance:PythonSelf.StructWithSelf", - }, - "jsii-calc.ReferenceEnumFromScopedPackage": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - "summary": "See awslabs/jsii#138.", - }, - "fqn": "jsii-calc.ReferenceEnumFromScopedPackage", - "initializer": { - "docs": { - "stability": "stable", - }, - }, - "kind": "class", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1239, - }, - "methods": [ - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1242, - }, - "name": "loadFoo", - "returns": { - "optional": true, - "type": { - "fqn": "@scope/jsii-calc-lib.EnumFromScopedModule", - }, - }, - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1246, - }, - "name": "saveFoo", - "parameters": [ - { - "name": "value", - "type": { - "fqn": "@scope/jsii-calc-lib.EnumFromScopedModule", - }, - }, - ], - }, - ], - "name": "ReferenceEnumFromScopedPackage", - "properties": [ - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1240, - }, - "name": "foo", - "optional": true, - "type": { - "fqn": "@scope/jsii-calc-lib.EnumFromScopedModule", - }, - }, - ], - "symbolId": "lib/compliance:ReferenceEnumFromScopedPackage", - }, - "jsii-calc.ReturnsPrivateImplementationOfInterface": { - "assembly": "jsii-calc", - "docs": { - "returns": "an instance of an un-exported class that extends \`ExportedBaseClass\`, declared as \`IPrivatelyImplemented\`.", - "see": "https://github.com/aws/jsii/issues/320", - "stability": "stable", - "summary": "Helps ensure the JSII kernel & runtime cooperate correctly when an un-exported instance of a class is returned with a declared type that is an exported interface, and the instance inherits from an exported class.", - }, - "fqn": "jsii-calc.ReturnsPrivateImplementationOfInterface", - "initializer": { - "docs": { - "stability": "stable", - }, - }, - "kind": "class", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1566, - }, - "name": "ReturnsPrivateImplementationOfInterface", - "properties": [ - { - "docs": { - "stability": "stable", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1567, - }, - "name": "privateImplementation", - "type": { - "fqn": "jsii-calc.IPrivatelyImplemented", - }, - }, - ], - "symbolId": "lib/compliance:ReturnsPrivateImplementationOfInterface", - }, - "jsii-calc.RootStruct": { - "assembly": "jsii-calc", - "datatype": true, - "docs": { - "remarks": "This is cheating with the (current) declared types, but this is the "more -idiomatic" way for Pythonists.", - "stability": "stable", - "summary": "This is here to check that we can pass a nested struct into a kwargs by specifying it as an in-line dictionary.", - }, - "fqn": "jsii-calc.RootStruct", - "kind": "interface", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2520, - }, - "name": "RootStruct", - "properties": [ - { - "abstract": true, - "docs": { - "stability": "stable", - "summary": "May not be empty.", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2524, - }, - "name": "stringProp", - "type": { - "primitive": "string", - }, - }, - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2525, - }, - "name": "nestedStruct", - "optional": true, - "type": { - "fqn": "jsii-calc.NestedStruct", - }, - }, - ], - "symbolId": "lib/compliance:RootStruct", - }, - "jsii-calc.RootStructValidator": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.RootStructValidator", - "kind": "class", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2533, - }, - "methods": [ - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2534, - }, - "name": "validate", - "parameters": [ - { - "name": "struct", - "type": { - "fqn": "jsii-calc.RootStruct", - }, - }, - ], - "static": true, - }, - ], - "name": "RootStructValidator", - "symbolId": "lib/compliance:RootStructValidator", - }, - "jsii-calc.RuntimeTypeChecking": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.RuntimeTypeChecking", - "initializer": { - "docs": { - "stability": "stable", - }, - }, - "kind": "class", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 288, - }, - "methods": [ - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 296, - }, - "name": "methodWithDefaultedArguments", - "parameters": [ - { - "name": "arg1", - "optional": true, - "type": { - "primitive": "number", - }, - }, - { - "name": "arg2", - "optional": true, - "type": { - "primitive": "string", - }, - }, - { - "name": "arg3", - "optional": true, - "type": { - "primitive": "date", - }, - }, - ], - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 304, - }, - "name": "methodWithOptionalAnyArgument", - "parameters": [ - { - "name": "arg", - "optional": true, - "type": { - "primitive": "any", - }, - }, - ], - }, - { - "docs": { - "stability": "stable", - "summary": "Used to verify verification of number of method arguments.", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 292, - }, - "name": "methodWithOptionalArguments", - "parameters": [ - { - "name": "arg1", - "type": { - "primitive": "number", - }, - }, - { - "name": "arg2", - "type": { - "primitive": "string", - }, - }, - { - "name": "arg3", - "optional": true, - "type": { - "primitive": "date", - }, - }, - ], - }, - ], - "name": "RuntimeTypeChecking", - "symbolId": "lib/compliance:RuntimeTypeChecking", - }, - "jsii-calc.SecondLevelStruct": { - "assembly": "jsii-calc", - "datatype": true, - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.SecondLevelStruct", - "kind": "interface", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2077, - }, - "name": "SecondLevelStruct", - "properties": [ - { - "abstract": true, - "docs": { - "stability": "stable", - "summary": "It's long and required.", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2081, - }, - "name": "deeperRequiredProp", - "type": { - "primitive": "string", - }, - }, - { - "abstract": true, - "docs": { - "stability": "stable", - "summary": "It's long, but you'll almost never pass it.", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2086, - }, - "name": "deeperOptionalProp", - "optional": true, - "type": { - "primitive": "string", - }, - }, - ], - "symbolId": "lib/compliance:SecondLevelStruct", - }, - "jsii-calc.SingleInstanceTwoTypes": { - "assembly": "jsii-calc", - "docs": { - "remarks": "JSII clients can instantiate 2 different strongly-typed wrappers for the same -object. Unfortunately, this will break object equality, but if we didn't do -this it would break runtime type checks in the JVM or CLR.", - "stability": "stable", - "summary": "Test that a single instance can be returned under two different FQNs.", - }, - "fqn": "jsii-calc.SingleInstanceTwoTypes", - "initializer": { - "docs": { - "stability": "stable", - }, - }, - "kind": "class", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1685, - }, - "methods": [ - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1688, - }, - "name": "interface1", - "returns": { - "type": { - "fqn": "jsii-calc.InbetweenClass", - }, - }, - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1692, - }, - "name": "interface2", - "returns": { - "type": { - "fqn": "jsii-calc.IPublicInterface", - }, - }, - }, - ], - "name": "SingleInstanceTwoTypes", - "symbolId": "lib/compliance:SingleInstanceTwoTypes", - }, - "jsii-calc.SingletonInt": { - "assembly": "jsii-calc", - "docs": { - "remarks": "https://github.com/aws/jsii/issues/231", - "stability": "stable", - "summary": "Verifies that singleton enums are handled correctly.", - }, - "fqn": "jsii-calc.SingletonInt", - "kind": "class", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2029, - }, - "methods": [ - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2031, - }, - "name": "isSingletonInt", - "parameters": [ - { - "name": "value", - "type": { - "primitive": "number", - }, - }, - ], - "returns": { - "type": { - "primitive": "boolean", - }, - }, - }, - ], - "name": "SingletonInt", - "symbolId": "lib/compliance:SingletonInt", - }, - "jsii-calc.SingletonIntEnum": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - "summary": "A singleton integer.", - }, - "fqn": "jsii-calc.SingletonIntEnum", - "kind": "enum", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2036, - }, - "members": [ - { - "docs": { - "stability": "stable", - "summary": "Elite!", - }, - "name": "SINGLETON_INT", - }, - ], - "name": "SingletonIntEnum", - "symbolId": "lib/compliance:SingletonIntEnum", - }, - "jsii-calc.SingletonString": { - "assembly": "jsii-calc", - "docs": { - "remarks": "https://github.com/aws/jsii/issues/231", - "stability": "stable", - "summary": "Verifies that singleton enums are handled correctly.", - }, - "fqn": "jsii-calc.SingletonString", - "kind": "class", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2012, - }, - "methods": [ - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2015, - }, - "name": "isSingletonString", - "parameters": [ - { - "name": "value", - "type": { - "primitive": "string", - }, - }, - ], - "returns": { - "type": { - "primitive": "boolean", - }, - }, - }, - ], - "name": "SingletonString", - "symbolId": "lib/compliance:SingletonString", - }, - "jsii-calc.SingletonStringEnum": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - "summary": "A singleton string.", - }, - "fqn": "jsii-calc.SingletonStringEnum", - "kind": "enum", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2020, - }, - "members": [ - { - "docs": { - "stability": "stable", - "summary": "1337.", - }, - "name": "SINGLETON_STRING", - }, - ], - "name": "SingletonStringEnum", - "symbolId": "lib/compliance:SingletonStringEnum", - }, - "jsii-calc.SmellyStruct": { - "assembly": "jsii-calc", - "datatype": true, - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.SmellyStruct", - "kind": "interface", - "locationInModule": { - "filename": "lib/calculator.ts", - "line": 415, - }, - "name": "SmellyStruct", - "properties": [ - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/calculator.ts", - "line": 416, - }, - "name": "property", - "type": { - "primitive": "string", - }, - }, - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/calculator.ts", - "line": 417, - }, - "name": "yetAnoterOne", - "type": { - "primitive": "boolean", - }, - }, - ], - "symbolId": "lib/calculator:SmellyStruct", - }, - "jsii-calc.SomeDecoratedClass": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.SomeDecoratedClass", - "initializer": { - "docs": { - "stability": "stable", - }, - }, - "kind": "class", - "locationInModule": { - "filename": "lib/decorators.ts", - "line": 29, - }, - "methods": [ - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/decorators.ts", - "line": 33, - }, - "name": "accessState", - "returns": { - "type": { - "primitive": "string", - }, - }, - }, - ], - "name": "SomeDecoratedClass", - "properties": [ - { - "docs": { - "stability": "stable", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/decorators.ts", - "line": 39, - }, - "name": "field", - "type": { - "primitive": "string", - }, - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/decorators.ts", - "line": 31, - }, - "name": "state", - "protected": true, - "type": { - "primitive": "string", - }, - }, - ], - "symbolId": "lib/decorators:SomeDecoratedClass", - }, - "jsii-calc.SomeTypeJsii976": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.SomeTypeJsii976", - "initializer": { - "docs": { - "stability": "stable", - }, - }, - "kind": "class", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2557, - }, - "methods": [ - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2566, - }, - "name": "returnAnonymous", - "returns": { - "type": { - "primitive": "any", - }, - }, - "static": true, - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2558, - }, - "name": "returnReturn", - "returns": { - "type": { - "fqn": "jsii-calc.IReturnJsii976", - }, - }, - "static": true, - }, - ], - "name": "SomeTypeJsii976", - "symbolId": "lib/compliance:SomeTypeJsii976", - }, - "jsii-calc.StableClass": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.StableClass", - "initializer": { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/stability.ts", - "line": 59, - }, - "parameters": [ - { - "name": "readonlyString", - "type": { - "primitive": "string", - }, - }, - { - "name": "mutableNumber", - "optional": true, - "type": { - "primitive": "number", - }, - }, - ], - }, - "kind": "class", - "locationInModule": { - "filename": "lib/stability.ts", - "line": 53, - }, - "methods": [ - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/stability.ts", - "line": 64, - }, - "name": "method", - }, - ], - "name": "StableClass", - "properties": [ - { - "docs": { - "stability": "stable", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/stability.ts", - "line": 55, - }, - "name": "readonlyProperty", - "type": { - "primitive": "string", - }, - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/stability.ts", - "line": 57, - }, - "name": "mutableProperty", - "optional": true, - "type": { - "primitive": "number", - }, - }, - ], - "symbolId": "lib/stability:StableClass", - }, - "jsii-calc.StableEnum": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.StableEnum", - "kind": "enum", - "locationInModule": { - "filename": "lib/stability.ts", - "line": 69, - }, - "members": [ - { - "docs": { - "stability": "stable", - }, - "name": "OPTION_A", - }, - { - "docs": { - "stability": "stable", - }, - "name": "OPTION_B", - }, - ], - "name": "StableEnum", - "symbolId": "lib/stability:StableEnum", - }, - "jsii-calc.StableStruct": { - "assembly": "jsii-calc", - "datatype": true, - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.StableStruct", - "kind": "interface", - "locationInModule": { - "filename": "lib/stability.ts", - "line": 41, - }, - "name": "StableStruct", - "properties": [ - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/stability.ts", - "line": 43, - }, - "name": "readonlyProperty", - "type": { - "primitive": "string", - }, - }, - ], - "symbolId": "lib/stability:StableStruct", - }, - "jsii-calc.StaticContext": { - "assembly": "jsii-calc", - "docs": { - "remarks": "https://github.com/awslabs/aws-cdk/issues/2304", - "stability": "stable", - "summary": "This is used to validate the ability to use \`this\` from within a static context.", - }, - "fqn": "jsii-calc.StaticContext", - "kind": "class", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1955, - }, - "methods": [ - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1958, - }, - "name": "canAccessStaticContext", - "returns": { - "type": { - "primitive": "boolean", - }, - }, - "static": true, - }, - ], - "name": "StaticContext", - "properties": [ - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1966, - }, - "name": "staticVariable", - "static": true, - "type": { - "primitive": "boolean", - }, - }, - ], - "symbolId": "lib/compliance:StaticContext", - }, - "jsii-calc.StaticHelloChild": { - "assembly": "jsii-calc", - "base": "jsii-calc.StaticHelloParent", - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.StaticHelloChild", - "kind": "class", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2938, - }, - "methods": [ - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2943, - }, - "name": "method", - "overrides": "jsii-calc.StaticHelloParent", - "static": true, - }, - ], - "name": "StaticHelloChild", - "properties": [ - { - "docs": { - "stability": "stable", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2939, - }, - "name": "property", - "overrides": "jsii-calc.StaticHelloParent", - "static": true, - "type": { - "primitive": "number", - }, - }, - ], - "symbolId": "lib/compliance:StaticHelloChild", - }, - "jsii-calc.StaticHelloParent": { - "assembly": "jsii-calc", - "docs": { - "remarks": "The difference is fairly minor (for typical use-cases, the end result is the -same), however this has implications on what the generated code should look -like.", - "stability": "stable", - "summary": "Static methods that override parent class are technically overrides (the inheritance of statics is part of the ES6 specification), but certain other languages such as Java do not carry statics in the inheritance chain at all, so they cannot be overridden, only hidden.", - }, - "fqn": "jsii-calc.StaticHelloParent", - "initializer": { - "docs": { - "stability": "stable", - }, - }, - "kind": "class", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2929, - }, - "methods": [ - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2934, - }, - "name": "method", - "static": true, - }, - ], - "name": "StaticHelloParent", - "properties": [ - { - "docs": { - "stability": "stable", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2930, - }, - "name": "property", - "static": true, - "type": { - "primitive": "number", - }, - }, - ], - "symbolId": "lib/compliance:StaticHelloParent", - }, - "jsii-calc.Statics": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.Statics", - "initializer": { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 690, - }, - "parameters": [ - { - "name": "value", - "type": { - "primitive": "string", - }, - }, - ], - }, - "kind": "class", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 689, - }, - "methods": [ - { - "docs": { - "stability": "stable", - "summary": "Jsdocs for static method.", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 696, - }, - "name": "staticMethod", - "parameters": [ - { - "docs": { - "summary": "The name of the person to say hello to.", - }, - "name": "name", - "type": { - "primitive": "string", - }, - }, - ], - "returns": { - "type": { - "primitive": "string", - }, - }, - "static": true, - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 700, - }, - "name": "justMethod", - "returns": { - "type": { - "primitive": "string", - }, - }, - }, - ], - "name": "Statics", - "properties": [ - { - "const": true, - "docs": { - "stability": "stable", - "summary": "Constants may also use all-caps.", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 712, - }, - "name": "BAR", - "static": true, - "type": { - "primitive": "number", - }, - }, - { - "const": true, - "docs": { - "stability": "stable", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 741, - }, - "name": "ConstObj", - "static": true, - "type": { - "fqn": "jsii-calc.DoubleTrouble", - }, - }, - { - "const": true, - "docs": { - "stability": "stable", - "summary": "Jsdocs for static property.", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 707, - }, - "name": "Foo", - "static": true, - "type": { - "primitive": "string", - }, - }, - { - "const": true, - "docs": { - "stability": "stable", - "summary": "Constants can also use camelCase.", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 717, - }, - "name": "zooBar", - "static": true, - "type": { - "collection": { - "elementtype": { - "primitive": "string", - }, - "kind": "map", - }, - }, - }, - { - "docs": { - "remarks": "Jsdocs for static setter.", - "stability": "stable", - "summary": "Jsdocs for static getter.", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 726, - }, - "name": "instance", - "static": true, - "type": { - "fqn": "jsii-calc.Statics", - }, - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 740, - }, - "name": "nonConstStatic", - "static": true, - "type": { - "primitive": "number", - }, - }, - { - "docs": { - "stability": "stable", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 690, - }, - "name": "value", - "type": { - "primitive": "string", - }, - }, - ], - "symbolId": "lib/compliance:Statics", - }, - "jsii-calc.StringEnum": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.StringEnum", - "kind": "enum", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 39, - }, - "members": [ - { - "docs": { - "stability": "stable", - }, - "name": "A", - }, - { - "docs": { - "stability": "stable", - }, - "name": "B", - }, - { - "docs": { - "stability": "stable", - }, - "name": "C", - }, - ], - "name": "StringEnum", - "symbolId": "lib/compliance:StringEnum", - }, - "jsii-calc.StripInternal": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.StripInternal", - "initializer": { - "docs": { - "stability": "stable", - }, - }, - "kind": "class", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1738, - }, - "name": "StripInternal", - "properties": [ - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1739, - }, - "name": "youSeeMe", - "type": { - "primitive": "string", - }, - }, - ], - "symbolId": "lib/compliance:StripInternal", - }, - "jsii-calc.StructA": { - "assembly": "jsii-calc", - "datatype": true, - "docs": { - "stability": "stable", - "summary": "We can serialize and deserialize structs without silently ignoring optional fields.", - }, - "fqn": "jsii-calc.StructA", - "kind": "interface", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2304, - }, - "name": "StructA", - "properties": [ - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2305, - }, - "name": "requiredString", - "type": { - "primitive": "string", - }, - }, - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2307, - }, - "name": "optionalNumber", - "optional": true, - "type": { - "primitive": "number", - }, - }, - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2306, - }, - "name": "optionalString", - "optional": true, - "type": { - "primitive": "string", - }, - }, - ], - "symbolId": "lib/compliance:StructA", - }, - "jsii-calc.StructB": { - "assembly": "jsii-calc", - "datatype": true, - "docs": { - "stability": "stable", - "summary": "This intentionally overlaps with StructA (where only requiredString is provided) to test htat the kernel properly disambiguates those.", - }, - "fqn": "jsii-calc.StructB", - "kind": "interface", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2313, - }, - "name": "StructB", - "properties": [ - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2314, - }, - "name": "requiredString", - "type": { - "primitive": "string", - }, - }, - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2315, - }, - "name": "optionalBoolean", - "optional": true, - "type": { - "primitive": "boolean", - }, - }, - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2316, - }, - "name": "optionalStructA", - "optional": true, - "type": { - "fqn": "jsii-calc.StructA", - }, - }, - ], - "symbolId": "lib/compliance:StructB", - }, - "jsii-calc.StructParameterType": { - "assembly": "jsii-calc", - "datatype": true, - "docs": { - "remarks": "See: https://github.com/aws/aws-cdk/issues/4302", - "stability": "stable", - "summary": "Verifies that, in languages that do keyword lifting (e.g: Python), having a struct member with the same name as a positional parameter results in the correct code being emitted.", - }, - "fqn": "jsii-calc.StructParameterType", - "kind": "interface", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2756, - }, - "name": "StructParameterType", - "properties": [ - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2757, - }, - "name": "scope", - "type": { - "primitive": "string", - }, - }, - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2758, - }, - "name": "props", - "optional": true, - "type": { - "primitive": "boolean", - }, - }, - ], - "symbolId": "lib/compliance:StructParameterType", - }, - "jsii-calc.StructPassing": { - "assembly": "jsii-calc", - "docs": { - "stability": "external", - "summary": "Just because we can.", - }, - "fqn": "jsii-calc.StructPassing", - "initializer": { - "docs": { - "stability": "stable", - }, - }, - "kind": "class", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2135, - }, - "methods": [ - { - "docs": { - "stability": "external", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2147, - }, - "name": "howManyVarArgsDidIPass", - "parameters": [ - { - "name": "_positional", - "type": { - "primitive": "number", - }, - }, - { - "name": "inputs", - "type": { - "fqn": "jsii-calc.TopLevelStruct", - }, - "variadic": true, - }, - ], - "returns": { - "type": { - "primitive": "number", - }, - }, - "static": true, - "variadic": true, - }, - { - "docs": { - "stability": "external", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2136, - }, - "name": "roundTrip", - "parameters": [ - { - "name": "_positional", - "type": { - "primitive": "number", - }, - }, - { - "name": "input", - "type": { - "fqn": "jsii-calc.TopLevelStruct", - }, - }, - ], - "returns": { - "type": { - "fqn": "jsii-calc.TopLevelStruct", - }, - }, - "static": true, - }, - ], - "name": "StructPassing", - "symbolId": "lib/compliance:StructPassing", - }, - "jsii-calc.StructUnionConsumer": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.StructUnionConsumer", - "kind": "class", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2318, - }, - "methods": [ - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2319, - }, - "name": "isStructA", - "parameters": [ - { - "name": "struct", - "type": { - "union": { - "types": [ - { - "fqn": "jsii-calc.StructA", - }, - { - "fqn": "jsii-calc.StructB", - }, - ], - }, - }, - }, - ], - "returns": { - "type": { - "primitive": "boolean", - }, - }, - "static": true, - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2340, - }, - "name": "isStructB", - "parameters": [ - { - "name": "struct", - "type": { - "union": { - "types": [ - { - "fqn": "jsii-calc.StructA", - }, - { - "fqn": "jsii-calc.StructB", - }, - ], - }, - }, - }, - ], - "returns": { - "type": { - "primitive": "boolean", - }, - }, - "static": true, - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2361, - }, - "name": "provideStruct", - "parameters": [ - { - "name": "which", - "type": { - "primitive": "string", - }, - }, - ], - "returns": { - "type": { - "union": { - "types": [ - { - "fqn": "jsii-calc.StructA", - }, - { - "fqn": "jsii-calc.StructB", - }, - ], - }, - }, - }, - "static": true, - }, - ], - "name": "StructUnionConsumer", - "symbolId": "lib/compliance:StructUnionConsumer", - }, - "jsii-calc.StructWithCollectionOfUnionts": { - "assembly": "jsii-calc", - "datatype": true, - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.StructWithCollectionOfUnionts", - "kind": "interface", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 3074, - }, - "name": "StructWithCollectionOfUnionts", - "properties": [ - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 3075, - }, - "name": "unionProperty", - "type": { - "collection": { - "elementtype": { - "collection": { - "elementtype": { - "union": { - "types": [ - { - "fqn": "jsii-calc.StructA", - }, - { - "fqn": "jsii-calc.StructB", - }, - ], - }, - }, - "kind": "map", - }, - }, - "kind": "array", - }, - }, - }, - ], - "symbolId": "lib/compliance:StructWithCollectionOfUnionts", - }, - "jsii-calc.StructWithEnum": { - "assembly": "jsii-calc", - "datatype": true, - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.StructWithEnum", - "kind": "interface", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2955, - }, - "name": "StructWithEnum", - "properties": [ - { - "abstract": true, - "docs": { - "stability": "stable", - "summary": "An enum value.", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2959, - }, - "name": "foo", - "type": { - "fqn": "jsii-calc.StringEnum", - }, - }, - { - "abstract": true, - "docs": { - "default": "AllTypesEnum.YOUR_ENUM_VALUE", - "stability": "stable", - "summary": "Optional enum value (of type integer).", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2965, - }, - "name": "bar", - "optional": true, - "type": { - "fqn": "jsii-calc.AllTypesEnum", - }, - }, - ], - "symbolId": "lib/compliance:StructWithEnum", - }, - "jsii-calc.StructWithJavaReservedWords": { - "assembly": "jsii-calc", - "datatype": true, - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.StructWithJavaReservedWords", - "kind": "interface", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2109, - }, - "name": "StructWithJavaReservedWords", - "properties": [ - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2110, - }, - "name": "default", - "type": { - "primitive": "string", - }, - }, - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2111, - }, - "name": "assert", - "optional": true, - "type": { - "primitive": "string", - }, - }, - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2114, - }, - "name": "result", - "optional": true, - "type": { - "primitive": "string", - }, - }, - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2115, - }, - "name": "that", - "optional": true, - "type": { - "primitive": "string", - }, - }, - ], - "symbolId": "lib/compliance:StructWithJavaReservedWords", - }, - "jsii-calc.Sum": { - "assembly": "jsii-calc", - "base": "jsii-calc.composition.CompositeOperation", - "docs": { - "stability": "stable", - "summary": "An operation that sums multiple values.", - }, - "fqn": "jsii-calc.Sum", - "initializer": { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/calculator.ts", - "line": 214, - }, - }, - "kind": "class", - "locationInModule": { - "filename": "lib/calculator.ts", - "line": 206, - }, - "name": "Sum", - "properties": [ - { - "docs": { - "remarks": "Must be implemented by derived classes.", - "stability": "stable", - "summary": "The expression that this operation consists of.", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/calculator.ts", - "line": 218, - }, - "name": "expression", - "overrides": "jsii-calc.composition.CompositeOperation", - "type": { - "fqn": "@scope/jsii-calc-lib.NumericValue", - }, - }, - { - "docs": { - "stability": "stable", - "summary": "The parts to sum.", - }, - "locationInModule": { - "filename": "lib/calculator.ts", - "line": 210, - }, - "name": "parts", - "type": { - "collection": { - "elementtype": { - "fqn": "@scope/jsii-calc-lib.NumericValue", - }, - "kind": "array", - }, - }, - }, - ], - "symbolId": "lib/calculator:Sum", - }, - "jsii-calc.SupportsNiceJavaBuilder": { - "assembly": "jsii-calc", - "base": "jsii-calc.SupportsNiceJavaBuilderWithRequiredProps", - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.SupportsNiceJavaBuilder", - "initializer": { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2244, - }, - "parameters": [ - { - "docs": { - "summary": "some identifier.", - }, - "name": "id", - "type": { - "primitive": "number", - }, - }, - { - "docs": { - "summary": "the default value of \`bar\`.", - }, - "name": "defaultBar", - "optional": true, - "type": { - "primitive": "number", - }, - }, - { - "docs": { - "summary": "some props once can provide.", - }, - "name": "props", - "optional": true, - "type": { - "fqn": "jsii-calc.SupportsNiceJavaBuilderProps", - }, - }, - { - "docs": { - "summary": "a variadic continuation.", - }, - "name": "rest", - "type": { - "primitive": "string", - }, - "variadic": true, - }, - ], - "variadic": true, - }, - "kind": "class", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2234, - }, - "name": "SupportsNiceJavaBuilder", - "properties": [ - { - "docs": { - "stability": "stable", - "summary": "some identifier.", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2245, - }, - "name": "id", - "overrides": "jsii-calc.SupportsNiceJavaBuilderWithRequiredProps", - "type": { - "primitive": "number", - }, - }, - { - "docs": { - "stability": "stable", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2235, - }, - "name": "rest", - "type": { - "collection": { - "elementtype": { - "primitive": "string", - }, - "kind": "array", - }, - }, - }, - ], - "symbolId": "lib/compliance:SupportsNiceJavaBuilder", - }, - "jsii-calc.SupportsNiceJavaBuilderProps": { - "assembly": "jsii-calc", - "datatype": true, - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.SupportsNiceJavaBuilderProps", - "kind": "interface", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2254, - }, - "name": "SupportsNiceJavaBuilderProps", - "properties": [ - { - "abstract": true, - "docs": { - "stability": "stable", - "summary": "Some number, like 42.", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2264, - }, - "name": "bar", - "type": { - "primitive": "number", - }, - }, - { - "abstract": true, - "docs": { - "remarks": "But here we are, doing it like we didn't care.", - "stability": "stable", - "summary": "An \`id\` field here is terrible API design, because the constructor of \`SupportsNiceJavaBuilder\` already has a parameter named \`id\`.", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2259, - }, - "name": "id", - "optional": true, - "type": { - "primitive": "string", - }, - }, - ], - "symbolId": "lib/compliance:SupportsNiceJavaBuilderProps", - }, - "jsii-calc.SupportsNiceJavaBuilderWithRequiredProps": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - "summary": "We can generate fancy builders in Java for classes which take a mix of positional & struct parameters.", - }, - "fqn": "jsii-calc.SupportsNiceJavaBuilderWithRequiredProps", - "initializer": { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2226, - }, - "parameters": [ - { - "docs": { - "summary": "some identifier of your choice.", - }, - "name": "id", - "type": { - "primitive": "number", - }, - }, - { - "docs": { - "summary": "some properties.", - }, - "name": "props", - "type": { - "fqn": "jsii-calc.SupportsNiceJavaBuilderProps", - }, - }, - ], - }, - "kind": "class", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2218, - }, - "name": "SupportsNiceJavaBuilderWithRequiredProps", - "properties": [ - { - "docs": { - "stability": "stable", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2220, - }, - "name": "bar", - "type": { - "primitive": "number", - }, - }, - { - "docs": { - "stability": "stable", - "summary": "some identifier of your choice.", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2227, - }, - "name": "id", - "type": { - "primitive": "number", - }, - }, - { - "docs": { - "stability": "stable", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2219, - }, - "name": "propId", - "optional": true, - "type": { - "primitive": "string", - }, - }, - ], - "symbolId": "lib/compliance:SupportsNiceJavaBuilderWithRequiredProps", - }, - "jsii-calc.SyncVirtualMethods": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.SyncVirtualMethods", - "initializer": { - "docs": { - "stability": "stable", - }, - }, - "kind": "class", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 376, - }, - "methods": [ - { - "async": true, - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 389, - }, - "name": "callerIsAsync", - "returns": { - "type": { - "primitive": "number", - }, - }, - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 377, - }, - "name": "callerIsMethod", - "returns": { - "type": { - "primitive": "number", - }, - }, - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 429, - }, - "name": "modifyOtherProperty", - "parameters": [ - { - "name": "value", - "type": { - "primitive": "string", - }, - }, - ], - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 401, - }, - "name": "modifyValueOfTheProperty", - "parameters": [ - { - "name": "value", - "type": { - "primitive": "string", - }, - }, - ], - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 442, - }, - "name": "readA", - "returns": { - "type": { - "primitive": "number", - }, - }, - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 433, - }, - "name": "retrieveOtherProperty", - "returns": { - "type": { - "primitive": "string", - }, - }, - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 413, - }, - "name": "retrieveReadOnlyProperty", - "returns": { - "type": { - "primitive": "string", - }, - }, - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 405, - }, - "name": "retrieveValueOfTheProperty", - "returns": { - "type": { - "primitive": "string", - }, - }, - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 393, - }, - "name": "virtualMethod", - "parameters": [ - { - "name": "n", - "type": { - "primitive": "number", - }, - }, - ], - "returns": { - "type": { - "primitive": "number", - }, - }, - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 446, - }, - "name": "writeA", - "parameters": [ - { - "name": "value", - "type": { - "primitive": "number", - }, - }, - ], - }, - ], - "name": "SyncVirtualMethods", - "properties": [ - { - "docs": { - "stability": "stable", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 411, - }, - "name": "readonlyProperty", - "type": { - "primitive": "string", - }, - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 440, - }, - "name": "a", - "type": { - "primitive": "number", - }, - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 381, - }, - "name": "callerIsProperty", - "type": { - "primitive": "number", - }, - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 419, - }, - "name": "otherProperty", - "type": { - "primitive": "string", - }, - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 399, - }, - "name": "theProperty", - "type": { - "primitive": "string", - }, - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 427, - }, - "name": "valueOfOtherProperty", - "type": { - "primitive": "string", - }, - }, - ], - "symbolId": "lib/compliance:SyncVirtualMethods", - }, - "jsii-calc.TestStructWithEnum": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.TestStructWithEnum", - "initializer": { - "docs": { - "stability": "stable", - }, - }, - "kind": "class", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2968, - }, - "methods": [ - { - "docs": { - "stability": "stable", - "summary": "Returns true if \`foo\` is \`StringEnum.A\`.", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2972, - }, - "name": "isStringEnumA", - "parameters": [ - { - "name": "input", - "type": { - "fqn": "jsii-calc.StructWithEnum", - }, - }, - ], - "returns": { - "type": { - "primitive": "boolean", - }, - }, - }, - { - "docs": { - "stability": "stable", - "summary": "Returns true if \`foo\` is \`StringEnum.B\` and \`bar\` is \`AllTypesEnum.THIS_IS_GREAT\`.", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2979, - }, - "name": "isStringEnumB", - "parameters": [ - { - "name": "input", - "type": { - "fqn": "jsii-calc.StructWithEnum", - }, - }, - ], - "returns": { - "type": { - "primitive": "boolean", - }, - }, - }, - ], - "name": "TestStructWithEnum", - "properties": [ - { - "docs": { - "stability": "stable", - "summary": "Returns \`foo: StringEnum.A\`.", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2998, - }, - "name": "structWithFoo", - "type": { - "fqn": "jsii-calc.StructWithEnum", - }, - }, - { - "docs": { - "stability": "stable", - "summary": "Returns \`foo: StringEnum.C\` and \`bar: AllTypesEnum.MY_ENUM_VALUE\`.", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2988, - }, - "name": "structWithFooBar", - "type": { - "fqn": "jsii-calc.StructWithEnum", - }, - }, - ], - "symbolId": "lib/compliance:TestStructWithEnum", - }, - "jsii-calc.Thrower": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.Thrower", - "initializer": { - "docs": { - "stability": "stable", - }, - }, - "kind": "class", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 651, - }, - "methods": [ - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 652, - }, - "name": "throwError", - }, - ], - "name": "Thrower", - "symbolId": "lib/compliance:Thrower", - }, - "jsii-calc.TopLevelStruct": { - "assembly": "jsii-calc", - "datatype": true, - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.TopLevelStruct", - "kind": "interface", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2060, - }, - "name": "TopLevelStruct", - "properties": [ - { - "abstract": true, - "docs": { - "stability": "stable", - "summary": "This is a required field.", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2064, - }, - "name": "required", - "type": { - "primitive": "string", - }, - }, - { - "abstract": true, - "docs": { - "stability": "stable", - "summary": "A union to really stress test our serialization.", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2074, - }, - "name": "secondLevel", - "type": { - "union": { - "types": [ - { - "primitive": "number", - }, - { - "fqn": "jsii-calc.SecondLevelStruct", - }, - ], - }, - }, - }, - { - "abstract": true, - "docs": { - "stability": "stable", - "summary": "You don't have to pass this.", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2069, - }, - "name": "optional", - "optional": true, - "type": { - "primitive": "string", - }, - }, - ], - "symbolId": "lib/compliance:TopLevelStruct", - }, - "jsii-calc.TwoMethodsWithSimilarCapitalization": { - "assembly": "jsii-calc", - "docs": { - "see": "https://github.com/aws/jsii/issues/2508", - "stability": "stable", - "summary": "In TypeScript it is possible to have two methods with the same name but different capitalization.", - }, - "fqn": "jsii-calc.TwoMethodsWithSimilarCapitalization", - "initializer": { - "docs": { - "stability": "stable", - }, - }, - "kind": "class", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 3041, - }, - "methods": [ - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 3042, - }, - "name": "toIsoString", - "returns": { - "type": { - "primitive": "string", - }, - }, - }, - { - "docs": { - "deprecated": "python requires that all alternatives are deprecated", - "stability": "deprecated", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 3056, - }, - "name": "toIsOString", - "returns": { - "type": { - "primitive": "string", - }, - }, - }, - { - "docs": { - "deprecated": "python requires that all alternatives are deprecated", - "stability": "deprecated", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 3049, - }, - "name": "toISOString", - "returns": { - "type": { - "primitive": "string", - }, - }, - }, - ], - "name": "TwoMethodsWithSimilarCapitalization", - "properties": [ - { - "docs": { - "stability": "stable", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 3060, - }, - "name": "fooBar", - "type": { - "primitive": "number", - }, - }, - { - "docs": { - "deprecated": "YES", - "stability": "deprecated", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 3065, - }, - "name": "fooBAR", - "type": { - "primitive": "number", - }, - }, - ], - "symbolId": "lib/compliance:TwoMethodsWithSimilarCapitalization", - }, - "jsii-calc.UmaskCheck": { - "assembly": "jsii-calc", - "docs": { - "see": "https://github.com/aws/jsii/issues/1765", - "stability": "stable", - "summary": "Checks the current file permissions are cool (no funky UMASK down-scoping happened).", - }, - "fqn": "jsii-calc.UmaskCheck", - "kind": "class", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2830, - }, - "methods": [ - { - "docs": { - "stability": "stable", - "summary": "This should return 0o644 (-rw-r--r--).", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2834, - }, - "name": "mode", - "returns": { - "type": { - "primitive": "number", - }, - }, - "static": true, - }, - ], - "name": "UmaskCheck", - "symbolId": "lib/compliance:UmaskCheck", - }, - "jsii-calc.UnaryOperation": { - "abstract": true, - "assembly": "jsii-calc", - "base": "@scope/jsii-calc-lib.Operation", - "docs": { - "stability": "stable", - "summary": "An operation on a single operand.", - }, - "fqn": "jsii-calc.UnaryOperation", - "initializer": { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/calculator.ts", - "line": 110, - }, - "parameters": [ - { - "name": "operand", - "type": { - "fqn": "@scope/jsii-calc-lib.NumericValue", - }, - }, - ], - }, - "kind": "class", - "locationInModule": { - "filename": "lib/calculator.ts", - "line": 109, - }, - "name": "UnaryOperation", - "properties": [ - { - "docs": { - "stability": "stable", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/calculator.ts", - "line": 110, - }, - "name": "operand", - "type": { - "fqn": "@scope/jsii-calc-lib.NumericValue", - }, - }, - ], - "symbolId": "lib/calculator:UnaryOperation", - }, - "jsii-calc.UnionProperties": { - "assembly": "jsii-calc", - "datatype": true, - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.UnionProperties", - "kind": "interface", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1168, - }, - "name": "UnionProperties", - "properties": [ - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1170, - }, - "name": "bar", - "type": { - "union": { - "types": [ - { - "primitive": "string", - }, - { - "primitive": "number", - }, - { - "fqn": "jsii-calc.AllTypes", - }, - ], - }, - }, - }, - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1169, - }, - "name": "foo", - "optional": true, - "type": { - "union": { - "types": [ - { - "primitive": "string", - }, - { - "primitive": "number", - }, - ], - }, - }, - }, - ], - "symbolId": "lib/compliance:UnionProperties", - }, - "jsii-calc.UpcasingReflectable": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - "summary": "Ensures submodule-imported types from dependencies can be used correctly.", - }, - "fqn": "jsii-calc.UpcasingReflectable", - "initializer": { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/submodules.ts", - "line": 9, - }, - "parameters": [ - { - "name": "delegate", - "type": { - "collection": { - "elementtype": { - "primitive": "any", - }, - "kind": "map", - }, - }, - }, - ], - }, - "interfaces": [ - "@scope/jsii-calc-lib.submodule.IReflectable", - ], - "kind": "class", - "locationInModule": { - "filename": "lib/submodules.ts", - "line": 6, - }, - "name": "UpcasingReflectable", - "properties": [ - { - "const": true, - "docs": { - "stability": "stable", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/submodules.ts", - "line": 7, - }, - "name": "reflector", - "static": true, - "type": { - "fqn": "@scope/jsii-calc-lib.submodule.Reflector", - }, - }, - { - "docs": { - "stability": "stable", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/submodules.ts", - "line": 11, - }, - "name": "entries", - "overrides": "@scope/jsii-calc-lib.submodule.IReflectable", - "type": { - "collection": { - "elementtype": { - "fqn": "@scope/jsii-calc-lib.submodule.ReflectableEntry", - }, - "kind": "array", - }, - }, - }, - ], - "symbolId": "lib/submodules:UpcasingReflectable", - }, - "jsii-calc.UseBundledDependency": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.UseBundledDependency", - "initializer": { - "docs": { - "stability": "stable", - }, - }, - "kind": "class", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1173, - }, - "methods": [ - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1174, - }, - "name": "value", - "returns": { - "type": { - "primitive": "any", - }, - }, - }, - ], - "name": "UseBundledDependency", - "symbolId": "lib/compliance:UseBundledDependency", - }, - "jsii-calc.UseCalcBase": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - "summary": "Depend on a type from jsii-calc-base as a test for awslabs/jsii#128.", - }, - "fqn": "jsii-calc.UseCalcBase", - "initializer": { - "docs": { - "stability": "stable", - }, - }, - "kind": "class", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1224, - }, - "methods": [ - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1225, - }, - "name": "hello", - "returns": { - "type": { - "fqn": "@scope/jsii-calc-base.Base", - }, - }, - }, - ], - "name": "UseCalcBase", - "symbolId": "lib/compliance:UseCalcBase", - }, - "jsii-calc.UsesInterfaceWithProperties": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.UsesInterfaceWithProperties", - "initializer": { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 597, - }, - "parameters": [ - { - "name": "obj", - "type": { - "fqn": "jsii-calc.IInterfaceWithProperties", - }, - }, - ], - }, - "kind": "class", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 596, - }, - "methods": [ - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 599, - }, - "name": "justRead", - "returns": { - "type": { - "primitive": "string", - }, - }, - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 608, - }, - "name": "readStringAndNumber", - "parameters": [ - { - "name": "ext", - "type": { - "fqn": "jsii-calc.IInterfaceWithPropertiesExtension", - }, - }, - ], - "returns": { - "type": { - "primitive": "string", - }, - }, - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 603, - }, - "name": "writeAndRead", - "parameters": [ - { - "name": "value", - "type": { - "primitive": "string", - }, - }, - ], - "returns": { - "type": { - "primitive": "string", - }, - }, - }, - ], - "name": "UsesInterfaceWithProperties", - "properties": [ - { - "docs": { - "stability": "stable", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 597, - }, - "name": "obj", - "type": { - "fqn": "jsii-calc.IInterfaceWithProperties", - }, - }, - ], - "symbolId": "lib/compliance:UsesInterfaceWithProperties", - }, - "jsii-calc.VariadicInvoker": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.VariadicInvoker", - "initializer": { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 681, - }, - "parameters": [ - { - "name": "method", - "type": { - "fqn": "jsii-calc.VariadicMethod", - }, - }, - ], - }, - "kind": "class", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 680, - }, - "methods": [ - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 683, - }, - "name": "asArray", - "parameters": [ - { - "name": "values", - "type": { - "primitive": "number", - }, - "variadic": true, - }, - ], - "returns": { - "type": { - "collection": { - "elementtype": { - "primitive": "number", - }, - "kind": "array", - }, - }, - }, - "variadic": true, - }, - ], - "name": "VariadicInvoker", - "symbolId": "lib/compliance:VariadicInvoker", - }, - "jsii-calc.VariadicMethod": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.VariadicMethod", - "initializer": { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 667, - }, - "parameters": [ - { - "docs": { - "summary": "a prefix that will be use for all values returned by \`#asArray\`.", - }, - "name": "prefix", - "type": { - "primitive": "number", - }, - "variadic": true, - }, - ], - "variadic": true, - }, - "kind": "class", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 661, - }, - "methods": [ - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 675, - }, - "name": "asArray", - "parameters": [ - { - "docs": { - "summary": "the first element of the array to be returned (after the \`prefix\` provided at construction time).", - }, - "name": "first", - "type": { - "primitive": "number", - }, - }, - { - "docs": { - "summary": "other elements to be included in the array.", - }, - "name": "others", - "type": { - "primitive": "number", - }, - "variadic": true, - }, - ], - "returns": { - "type": { - "collection": { - "elementtype": { - "primitive": "number", - }, - "kind": "array", - }, - }, - }, - "variadic": true, - }, - ], - "name": "VariadicMethod", - "symbolId": "lib/compliance:VariadicMethod", - }, - "jsii-calc.VariadicTypeUnion": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.VariadicTypeUnion", - "initializer": { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 3089, - }, - "parameters": [ - { - "name": "union", - "type": { - "union": { - "types": [ - { - "fqn": "jsii-calc.StructA", - }, - { - "fqn": "jsii-calc.StructB", - }, - ], - }, - }, - "variadic": true, - }, - ], - "variadic": true, - }, - "kind": "class", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 3086, - }, - "name": "VariadicTypeUnion", - "properties": [ - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 3087, - }, - "name": "union", - "type": { - "collection": { - "elementtype": { - "union": { - "types": [ - { - "fqn": "jsii-calc.StructA", - }, - { - "fqn": "jsii-calc.StructB", - }, - ], - }, - }, - "kind": "array", - }, - }, - }, - ], - "symbolId": "lib/compliance:VariadicTypeUnion", - }, - "jsii-calc.VirtualMethodPlayground": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.VirtualMethodPlayground", - "initializer": { - "docs": { - "stability": "stable", - }, - }, - "kind": "class", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 451, - }, - "methods": [ - { - "async": true, - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 476, - }, - "name": "overrideMeAsync", - "parameters": [ - { - "name": "index", - "type": { - "primitive": "number", - }, - }, - ], - "returns": { - "type": { - "primitive": "number", - }, - }, - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 480, - }, - "name": "overrideMeSync", - "parameters": [ - { - "name": "index", - "type": { - "primitive": "number", - }, - }, - ], - "returns": { - "type": { - "primitive": "number", - }, - }, - }, - { - "async": true, - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 458, - }, - "name": "parallelSumAsync", - "parameters": [ - { - "name": "count", - "type": { - "primitive": "number", - }, - }, - ], - "returns": { - "type": { - "primitive": "number", - }, - }, - }, - { - "async": true, - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 452, - }, - "name": "serialSumAsync", - "parameters": [ - { - "name": "count", - "type": { - "primitive": "number", - }, - }, - ], - "returns": { - "type": { - "primitive": "number", - }, - }, - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 468, - }, - "name": "sumSync", - "parameters": [ - { - "name": "count", - "type": { - "primitive": "number", - }, - }, - ], - "returns": { - "type": { - "primitive": "number", - }, - }, - }, - ], - "name": "VirtualMethodPlayground", - "symbolId": "lib/compliance:VirtualMethodPlayground", - }, - "jsii-calc.VoidCallback": { - "abstract": true, - "assembly": "jsii-calc", - "docs": { - "remarks": "- Implement \`overrideMe\` (method does not have to do anything). -- Invoke \`callMe\` -- Verify that \`methodWasCalled\` is \`true\`.", - "stability": "stable", - "summary": "This test is used to validate the runtimes can return correctly from a void callback.", - }, - "fqn": "jsii-calc.VoidCallback", - "initializer": { - "docs": { - "stability": "stable", - }, - }, - "kind": "class", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1984, - }, - "methods": [ - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1989, - }, - "name": "callMe", - }, - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1993, - }, - "name": "overrideMe", - "protected": true, - }, - ], - "name": "VoidCallback", - "properties": [ - { - "docs": { - "stability": "stable", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1986, - }, - "name": "methodWasCalled", - "type": { - "primitive": "boolean", - }, - }, - ], - "symbolId": "lib/compliance:VoidCallback", - }, - "jsii-calc.WithPrivatePropertyInConstructor": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - "summary": "Verifies that private property declarations in constructor arguments are hidden.", - }, - "fqn": "jsii-calc.WithPrivatePropertyInConstructor", - "initializer": { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2000, - }, - "parameters": [ - { - "name": "privateField", - "optional": true, - "type": { - "primitive": "string", - }, - }, - ], - }, - "kind": "class", - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 1999, - }, - "name": "WithPrivatePropertyInConstructor", - "properties": [ - { - "docs": { - "stability": "stable", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/compliance.ts", - "line": 2002, - }, - "name": "success", - "type": { - "primitive": "boolean", - }, - }, - ], - "symbolId": "lib/compliance:WithPrivatePropertyInConstructor", - }, - "jsii-calc.anonymous.IOptionA": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.anonymous.IOptionA", - "kind": "interface", - "locationInModule": { - "filename": "lib/anonymous/index.ts", - "line": 1, - }, - "methods": [ - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/anonymous/index.ts", - "line": 2, - }, - "name": "doSomething", - "returns": { - "type": { - "primitive": "string", - }, - }, - }, - ], - "name": "IOptionA", - "namespace": "anonymous", - "symbolId": "lib/anonymous/index:IOptionA", - }, - "jsii-calc.anonymous.IOptionB": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.anonymous.IOptionB", - "kind": "interface", - "locationInModule": { - "filename": "lib/anonymous/index.ts", - "line": 5, - }, - "methods": [ - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/anonymous/index.ts", - "line": 6, - }, - "name": "doSomethingElse", - "returns": { - "type": { - "primitive": "string", - }, - }, - }, - ], - "name": "IOptionB", - "namespace": "anonymous", - "symbolId": "lib/anonymous/index:IOptionB", - }, - "jsii-calc.anonymous.UseOptions": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.anonymous.UseOptions", - "kind": "class", - "locationInModule": { - "filename": "lib/anonymous/index.ts", - "line": 9, - }, - "methods": [ - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/anonymous/index.ts", - "line": 25, - }, - "name": "consume", - "parameters": [ - { - "name": "option", - "type": { - "union": { - "types": [ - { - "fqn": "jsii-calc.anonymous.IOptionA", - }, - { - "fqn": "jsii-calc.anonymous.IOptionB", - }, - ], - }, - }, - }, - ], - "returns": { - "type": { - "primitive": "string", - }, - }, - "static": true, - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/anonymous/index.ts", - "line": 21, - }, - "name": "privideAsAny", - "parameters": [ - { - "name": "which", - "type": { - "primitive": "string", - }, - }, - ], - "returns": { - "type": { - "primitive": "any", - }, - }, - "static": true, - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/anonymous/index.ts", - "line": 10, - }, - "name": "provide", - "parameters": [ - { - "name": "which", - "type": { - "primitive": "string", - }, - }, - ], - "returns": { - "type": { - "union": { - "types": [ - { - "fqn": "jsii-calc.anonymous.IOptionA", - }, - { - "fqn": "jsii-calc.anonymous.IOptionB", - }, - ], - }, - }, - }, - "static": true, - }, - ], - "name": "UseOptions", - "namespace": "anonymous", - "symbolId": "lib/anonymous/index:UseOptions", - }, - "jsii-calc.cdk16625.Cdk16625": { - "abstract": true, - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.cdk16625.Cdk16625", - "initializer": { - "docs": { - "stability": "stable", - }, - }, - "kind": "class", - "locationInModule": { - "filename": "lib/cdk16625/index.ts", - "line": 8, - }, - "methods": [ - { - "docs": { - "stability": "stable", - "summary": "Run this function to verify that everything is working as it should.", - }, - "locationInModule": { - "filename": "lib/cdk16625/index.ts", - "line": 21, - }, - "name": "test", - }, - { - "abstract": true, - "docs": { - "stability": "stable", - "summary": "Implement this functin to return \`gen.next()\`. It is extremely important that the \`donotimport\` submodule is NEVER explicitly loaded in the testing application (otherwise this test is void).", - }, - "locationInModule": { - "filename": "lib/cdk16625/index.ts", - "line": 16, - }, - "name": "unwrap", - "parameters": [ - { - "docs": { - "summary": "a VERY pseudo random number generator.", - }, - "name": "gen", - "type": { - "fqn": "jsii-calc.IRandomNumberGenerator", - }, - }, - ], - "protected": true, - "returns": { - "type": { - "primitive": "number", - }, - }, - }, - ], - "name": "Cdk16625", - "namespace": "cdk16625", - "symbolId": "lib/cdk16625/index:Cdk16625", - }, - "jsii-calc.cdk16625.donotimport.UnimportedSubmoduleType": { - "assembly": "jsii-calc", - "docs": { - "remarks": "This checks -that all types available in the assembly can be resolved by the runtime -library, regardless of whether they were explicitly referenced or not.", - "see": "https://github.com/aws/aws-cdk/issues/16625", - "stability": "stable", - "summary": "This type demonstrates the ability to receive a callback argument that has a type from a submodule not explicitly imported in the user's code.", - }, - "fqn": "jsii-calc.cdk16625.donotimport.UnimportedSubmoduleType", - "initializer": { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/cdk16625/donotimport/index.ts", - "line": 12, - }, - "parameters": [ - { - "name": "value", - "type": { - "primitive": "number", - }, - }, - ], - }, - "interfaces": [ - "jsii-calc.IRandomNumberGenerator", - ], - "kind": "class", - "locationInModule": { - "filename": "lib/cdk16625/donotimport/index.ts", - "line": 11, - }, - "methods": [ - { - "docs": { - "returns": "1337", - "stability": "stable", - "summary": "Not quite random, but it'll do.", - }, - "locationInModule": { - "filename": "lib/cdk16625/donotimport/index.ts", - "line": 19, - }, - "name": "next", - "overrides": "jsii-calc.IRandomNumberGenerator", - "returns": { - "type": { - "primitive": "number", - }, - }, - }, - ], - "name": "UnimportedSubmoduleType", - "namespace": "cdk16625.donotimport", - "symbolId": "lib/cdk16625/donotimport/index:UnimportedSubmoduleType", - }, - "jsii-calc.cdk22369.AcceptsPath": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.cdk22369.AcceptsPath", - "initializer": { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/cdk22369/index.ts", - "line": 19, - }, - "parameters": [ - { - "name": "props", - "type": { - "fqn": "jsii-calc.cdk22369.AcceptsPathProps", - }, - }, - ], - }, - "kind": "class", - "locationInModule": { - "filename": "lib/cdk22369/index.ts", - "line": 17, - }, - "name": "AcceptsPath", - "namespace": "cdk22369", - "symbolId": "lib/cdk22369/index:AcceptsPath", - }, - "jsii-calc.cdk22369.AcceptsPathProps": { - "assembly": "jsii-calc", - "datatype": true, - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.cdk22369.AcceptsPathProps", - "kind": "interface", - "locationInModule": { - "filename": "lib/cdk22369/index.ts", - "line": 10, - }, - "name": "AcceptsPathProps", - "namespace": "cdk22369", - "properties": [ - { - "abstract": true, - "docs": { - "stability": "stable", - "summary": "A path that doesn't exist.", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/cdk22369/index.ts", - "line": 14, - }, - "name": "sourcePath", - "type": { - "primitive": "string", - }, - }, - ], - "symbolId": "lib/cdk22369/index:AcceptsPathProps", - }, - "jsii-calc.composition.CompositeOperation": { - "abstract": true, - "assembly": "jsii-calc", - "base": "@scope/jsii-calc-lib.Operation", - "docs": { - "stability": "stable", - "summary": "Abstract operation composed from an expression of other operations.", - }, - "fqn": "jsii-calc.composition.CompositeOperation", - "initializer": {}, - "kind": "class", - "locationInModule": { - "filename": "lib/calculator.ts", - "line": 147, - }, - "methods": [ - { - "docs": { - "stability": "stable", - "summary": "String representation of the value.", - }, - "locationInModule": { - "filename": "lib/calculator.ts", - "line": 173, - }, - "name": "toString", - "overrides": "@scope/jsii-calc-lib.Operation", - "returns": { - "type": { - "primitive": "string", - }, - }, - }, - ], - "name": "CompositeOperation", - "namespace": "composition", - "properties": [ - { - "abstract": true, - "docs": { - "remarks": "Must be implemented by derived classes.", - "stability": "stable", - "summary": "The expression that this operation consists of.", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/calculator.ts", - "line": 171, - }, - "name": "expression", - "type": { - "fqn": "@scope/jsii-calc-lib.NumericValue", - }, - }, - { - "docs": { - "stability": "stable", - "summary": "The value.", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/calculator.ts", - "line": 163, - }, - "name": "value", - "overrides": "@scope/jsii-calc-lib.NumericValue", - "type": { - "primitive": "number", - }, - }, - { - "docs": { - "stability": "stable", - "summary": "A set of postfixes to include in a decorated .toString().", - }, - "locationInModule": { - "filename": "lib/calculator.ts", - "line": 161, - }, - "name": "decorationPostfixes", - "type": { - "collection": { - "elementtype": { - "primitive": "string", - }, - "kind": "array", - }, - }, - }, - { - "docs": { - "stability": "stable", - "summary": "A set of prefixes to include in a decorated .toString().", - }, - "locationInModule": { - "filename": "lib/calculator.ts", - "line": 156, - }, - "name": "decorationPrefixes", - "type": { - "collection": { - "elementtype": { - "primitive": "string", - }, - "kind": "array", - }, - }, - }, - { - "docs": { - "stability": "stable", - "summary": "The .toString() style.", - }, - "locationInModule": { - "filename": "lib/calculator.ts", - "line": 151, - }, - "name": "stringStyle", - "type": { - "fqn": "jsii-calc.composition.CompositeOperation.CompositionStringStyle", - }, - }, - ], - "symbolId": "lib/calculator:composition.CompositeOperation", - }, - "jsii-calc.composition.CompositeOperation.CompositionStringStyle": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - "summary": "Style of .toString() output for CompositeOperation.", - }, - "fqn": "jsii-calc.composition.CompositeOperation.CompositionStringStyle", - "kind": "enum", - "locationInModule": { - "filename": "lib/calculator.ts", - "line": 193, - }, - "members": [ - { - "docs": { - "stability": "stable", - "summary": "Normal string expression.", - }, - "name": "NORMAL", - }, - { - "docs": { - "stability": "stable", - "summary": "Decorated string expression.", - }, - "name": "DECORATED", - }, - ], - "name": "CompositionStringStyle", - "namespace": "composition.CompositeOperation", - "symbolId": "lib/calculator:composition.CompositeOperation.CompositionStringStyle", - }, - "jsii-calc.homonymousForwardReferences.bar.Consumer": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.homonymousForwardReferences.bar.Consumer", - "kind": "class", - "locationInModule": { - "filename": "lib/homonymous/bar.ts", - "line": 9, - }, - "methods": [ - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/homonymous/bar.ts", - "line": 10, - }, - "name": "consume", - "parameters": [ - { - "name": "props", - "type": { - "fqn": "jsii-calc.homonymousForwardReferences.bar.ConsumerProps", - }, - }, - ], - "returns": { - "type": { - "fqn": "jsii-calc.homonymousForwardReferences.bar.Homonymous", - }, - }, - "static": true, - }, - ], - "name": "Consumer", - "namespace": "homonymousForwardReferences.bar", - "symbolId": "lib/homonymous/bar:Consumer", - }, - "jsii-calc.homonymousForwardReferences.bar.ConsumerProps": { - "assembly": "jsii-calc", - "datatype": true, - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.homonymousForwardReferences.bar.ConsumerProps", - "kind": "interface", - "locationInModule": { - "filename": "lib/homonymous/bar.ts", - "line": 5, - }, - "name": "ConsumerProps", - "namespace": "homonymousForwardReferences.bar", - "properties": [ - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/homonymous/bar.ts", - "line": 6, - }, - "name": "homonymous", - "type": { - "fqn": "jsii-calc.homonymousForwardReferences.bar.Homonymous", - }, - }, - ], - "symbolId": "lib/homonymous/bar:ConsumerProps", - }, - "jsii-calc.homonymousForwardReferences.bar.Homonymous": { - "assembly": "jsii-calc", - "datatype": true, - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.homonymousForwardReferences.bar.Homonymous", - "kind": "interface", - "locationInModule": { - "filename": "lib/homonymous/bar.ts", - "line": 1, - }, - "name": "Homonymous", - "namespace": "homonymousForwardReferences.bar", - "properties": [ - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/homonymous/bar.ts", - "line": 2, - }, - "name": "numericProperty", - "type": { - "primitive": "number", - }, - }, - ], - "symbolId": "lib/homonymous/bar:Homonymous", - }, - "jsii-calc.homonymousForwardReferences.foo.Consumer": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.homonymousForwardReferences.foo.Consumer", - "kind": "class", - "locationInModule": { - "filename": "lib/homonymous/foo.ts", - "line": 9, - }, - "methods": [ - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/homonymous/foo.ts", - "line": 10, - }, - "name": "consume", - "parameters": [ - { - "name": "props", - "type": { - "fqn": "jsii-calc.homonymousForwardReferences.foo.ConsumerProps", - }, - }, - ], - "returns": { - "type": { - "fqn": "jsii-calc.homonymousForwardReferences.foo.Homonymous", - }, - }, - "static": true, - }, - ], - "name": "Consumer", - "namespace": "homonymousForwardReferences.foo", - "symbolId": "lib/homonymous/foo:Consumer", - }, - "jsii-calc.homonymousForwardReferences.foo.ConsumerProps": { - "assembly": "jsii-calc", - "datatype": true, - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.homonymousForwardReferences.foo.ConsumerProps", - "kind": "interface", - "locationInModule": { - "filename": "lib/homonymous/foo.ts", - "line": 5, - }, - "name": "ConsumerProps", - "namespace": "homonymousForwardReferences.foo", - "properties": [ - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/homonymous/foo.ts", - "line": 6, - }, - "name": "homonymous", - "type": { - "fqn": "jsii-calc.homonymousForwardReferences.foo.Homonymous", - }, - }, - ], - "symbolId": "lib/homonymous/foo:ConsumerProps", - }, - "jsii-calc.homonymousForwardReferences.foo.Homonymous": { - "assembly": "jsii-calc", - "datatype": true, - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.homonymousForwardReferences.foo.Homonymous", - "kind": "interface", - "locationInModule": { - "filename": "lib/homonymous/foo.ts", - "line": 1, - }, - "name": "Homonymous", - "namespace": "homonymousForwardReferences.foo", - "properties": [ - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/homonymous/foo.ts", - "line": 2, - }, - "name": "stringProperty", - "type": { - "primitive": "string", - }, - }, - ], - "symbolId": "lib/homonymous/foo:Homonymous", - }, - "jsii-calc.jsii3656.ImplementMeOpts": { - "assembly": "jsii-calc", - "datatype": true, - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.jsii3656.ImplementMeOpts", - "kind": "interface", - "locationInModule": { - "filename": "lib/jsii3656/index.ts", - "line": 12, - }, - "name": "ImplementMeOpts", - "namespace": "jsii3656", - "properties": [ - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/jsii3656/index.ts", - "line": 13, - }, - "name": "name", - "type": { - "primitive": "string", - }, - }, - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/jsii3656/index.ts", - "line": 14, - }, - "name": "count", - "optional": true, - "type": { - "primitive": "number", - }, - }, - ], - "symbolId": "lib/jsii3656/index:ImplementMeOpts", - }, - "jsii-calc.jsii3656.OverrideMe": { - "abstract": true, - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.jsii3656.OverrideMe", - "initializer": { - "docs": { - "stability": "stable", - }, - }, - "kind": "class", - "locationInModule": { - "filename": "lib/jsii3656/index.ts", - "line": 1, - }, - "methods": [ - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/jsii3656/index.ts", - "line": 2, - }, - "name": "callAbstract", - "parameters": [ - { - "name": "receiver", - "type": { - "fqn": "jsii-calc.jsii3656.OverrideMe", - }, - }, - ], - "returns": { - "type": { - "primitive": "boolean", - }, - }, - "static": true, - }, - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/jsii3656/index.ts", - "line": 9, - }, - "name": "implementMe", - "parameters": [ - { - "name": "opts", - "type": { - "fqn": "jsii-calc.jsii3656.ImplementMeOpts", - }, - }, - ], - "returns": { - "type": { - "primitive": "boolean", - }, - }, - }, - ], - "name": "OverrideMe", - "namespace": "jsii3656", - "symbolId": "lib/jsii3656/index:OverrideMe", - }, - "jsii-calc.module2530.MyClass": { - "assembly": "jsii-calc", - "docs": { - "see": "https://github.com/aws/jsii/issues/2530", - "stability": "stable", - "summary": "Verifies a method with parameters "_" can be generated.", - }, - "fqn": "jsii-calc.module2530.MyClass", - "initializer": { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/module2530/index.ts", - "line": 10, - }, - "parameters": [ - { - "name": "_", - "type": { - "primitive": "number", - }, - }, - ], - }, - "kind": "class", - "locationInModule": { - "filename": "lib/module2530/index.ts", - "line": 5, - }, - "methods": [ - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/module2530/index.ts", - "line": 6, - }, - "name": "bar", - "parameters": [ - { - "name": "_", - "type": { - "primitive": "boolean", - }, - }, - ], - "static": true, - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/module2530/index.ts", - "line": 14, - }, - "name": "foo", - "parameters": [ - { - "name": "_", - "type": { - "primitive": "string", - }, - }, - ], - }, - ], - "name": "MyClass", - "namespace": "module2530", - "symbolId": "lib/module2530/index:MyClass", - }, - "jsii-calc.module2617.OnlyStatics": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.module2617.OnlyStatics", - "kind": "class", - "locationInModule": { - "filename": "lib/module2617/index.ts", - "line": 3, - }, - "methods": [ - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/module2617/index.ts", - "line": 7, - }, - "name": "bar", - "static": true, - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/module2617/index.ts", - "line": 4, - }, - "name": "foo", - "static": true, - }, - ], - "name": "OnlyStatics", - "namespace": "module2617", - "symbolId": "lib/module2617/index:OnlyStatics", - }, - "jsii-calc.module2647.ExtendAndImplement": { - "assembly": "jsii-calc", - "base": "@scope/jsii-calc-lib.BaseFor2647", - "docs": { - "see": "https://github.com/aws/jsii/issues/2647", - "stability": "stable", - "summary": "This class falls into the category of "multiple bases" from a different module from a go code gen perspective.", - }, - "fqn": "jsii-calc.module2647.ExtendAndImplement", - "initializer": { - "docs": { - "stability": "deprecated", - }, - "locationInModule": { - "filename": "lib/index.ts", - "line": 122, - }, - "parameters": [ - { - "name": "very", - "type": { - "fqn": "@scope/jsii-calc-base-of-base.Very", - }, - }, - ], - }, - "interfaces": [ - "@scope/jsii-calc-lib.IFriendly", - ], - "kind": "class", - "locationInModule": { - "filename": "lib/module2647/index.ts", - "line": 9, - }, - "methods": [ - { - "docs": { - "stability": "stable", - "summary": "Say hello!", - }, - "locationInModule": { - "filename": "lib/module2647/index.ts", - "line": 14, - }, - "name": "hello", - "overrides": "@scope/jsii-calc-lib.IFriendly", - "returns": { - "type": { - "primitive": "string", - }, - }, - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/module2647/index.ts", - "line": 10, - }, - "name": "localMethod", - "returns": { - "type": { - "primitive": "string", - }, - }, - }, - ], - "name": "ExtendAndImplement", - "namespace": "module2647", - "symbolId": "lib/module2647/index:ExtendAndImplement", - }, - "jsii-calc.module2689.methods.MyClass": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.module2689.methods.MyClass", - "initializer": { - "docs": { - "stability": "stable", - }, - }, - "kind": "class", - "locationInModule": { - "filename": "lib/module2689/methods/index.ts", - "line": 4, - }, - "methods": [ - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/module2689/methods/index.ts", - "line": 9, - }, - "name": "bar", - "parameters": [ - { - "name": "_bar", - "type": { - "collection": { - "elementtype": { - "fqn": "@scope/jsii-calc-base.BaseProps", - }, - "kind": "map", - }, - }, - }, - ], - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/module2689/methods/index.ts", - "line": 5, - }, - "name": "foo", - "parameters": [ - { - "name": "_values", - "type": { - "collection": { - "elementtype": { - "fqn": "@scope/jsii-calc-lib.Number", - }, - "kind": "array", - }, - }, - }, - ], - }, - ], - "name": "MyClass", - "namespace": "module2689.methods", - "symbolId": "lib/module2689/methods/index:MyClass", - }, - "jsii-calc.module2689.props.MyClass": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.module2689.props.MyClass", - "initializer": { - "docs": { - "stability": "stable", - }, - }, - "kind": "class", - "locationInModule": { - "filename": "lib/module2689/props/index.ts", - "line": 4, - }, - "name": "MyClass", - "namespace": "module2689.props", - "properties": [ - { - "docs": { - "stability": "stable", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/module2689/props/index.ts", - "line": 6, - }, - "name": "bar", - "type": { - "collection": { - "elementtype": { - "fqn": "@scope/jsii-calc-base.BaseProps", - }, - "kind": "map", - }, - }, - }, - { - "docs": { - "stability": "stable", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/module2689/props/index.ts", - "line": 5, - }, - "name": "foo", - "type": { - "collection": { - "elementtype": { - "fqn": "@scope/jsii-calc-lib.Number", - }, - "kind": "array", - }, - }, - }, - ], - "symbolId": "lib/module2689/props/index:MyClass", - }, - "jsii-calc.module2689.retval.MyClass": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.module2689.retval.MyClass", - "initializer": { - "docs": { - "stability": "stable", - }, - }, - "kind": "class", - "locationInModule": { - "filename": "lib/module2689/retval/index.ts", - "line": 4, - }, - "methods": [ - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/module2689/retval/index.ts", - "line": 9, - }, - "name": "bar", - "returns": { - "type": { - "collection": { - "elementtype": { - "fqn": "@scope/jsii-calc-base.BaseProps", - }, - "kind": "map", - }, - }, - }, - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/module2689/retval/index.ts", - "line": 5, - }, - "name": "foo", - "returns": { - "type": { - "collection": { - "elementtype": { - "fqn": "@scope/jsii-calc-lib.Number", - }, - "kind": "array", - }, - }, - }, - }, - ], - "name": "MyClass", - "namespace": "module2689.retval", - "symbolId": "lib/module2689/retval/index:MyClass", - }, - "jsii-calc.module2689.structs.MyStruct": { - "assembly": "jsii-calc", - "datatype": true, - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.module2689.structs.MyStruct", - "kind": "interface", - "locationInModule": { - "filename": "lib/module2689/structs/index.ts", - "line": 4, - }, - "name": "MyStruct", - "namespace": "module2689.structs", - "properties": [ - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/module2689/structs/index.ts", - "line": 6, - }, - "name": "baseMap", - "type": { - "collection": { - "elementtype": { - "fqn": "@scope/jsii-calc-base.BaseProps", - }, - "kind": "map", - }, - }, - }, - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/module2689/structs/index.ts", - "line": 5, - }, - "name": "numbers", - "type": { - "collection": { - "elementtype": { - "fqn": "@scope/jsii-calc-lib.Number", - }, - "kind": "array", - }, - }, - }, - ], - "symbolId": "lib/module2689/structs/index:MyStruct", - }, - "jsii-calc.module2692.submodule1.Bar": { - "assembly": "jsii-calc", - "datatype": true, - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.module2692.submodule1.Bar", - "kind": "interface", - "locationInModule": { - "filename": "lib/module2692/submodule1/index.ts", - "line": 1, - }, - "name": "Bar", - "namespace": "module2692.submodule1", - "properties": [ - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/module2692/submodule1/index.ts", - "line": 2, - }, - "name": "bar1", - "type": { - "primitive": "string", - }, - }, - ], - "symbolId": "lib/module2692/submodule1/index:Bar", - }, - "jsii-calc.module2692.submodule2.Bar": { - "assembly": "jsii-calc", - "datatype": true, - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.module2692.submodule2.Bar", - "kind": "interface", - "locationInModule": { - "filename": "lib/module2692/submodule2/index.ts", - "line": 3, - }, - "name": "Bar", - "namespace": "module2692.submodule2", - "properties": [ - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/module2692/submodule2/index.ts", - "line": 4, - }, - "name": "bar2", - "type": { - "primitive": "string", - }, - }, - ], - "symbolId": "lib/module2692/submodule2/index:Bar", - }, - "jsii-calc.module2692.submodule2.Foo": { - "assembly": "jsii-calc", - "datatype": true, - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.module2692.submodule2.Foo", - "interfaces": [ - "jsii-calc.module2692.submodule2.Bar", - "jsii-calc.module2692.submodule1.Bar", - ], - "kind": "interface", - "locationInModule": { - "filename": "lib/module2692/submodule2/index.ts", - "line": 7, - }, - "name": "Foo", - "namespace": "module2692.submodule2", - "properties": [ - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/module2692/submodule2/index.ts", - "line": 8, - }, - "name": "foo2", - "type": { - "primitive": "string", - }, - }, - ], - "symbolId": "lib/module2692/submodule2/index:Foo", - }, - "jsii-calc.module2700.Base": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.module2700.Base", - "initializer": { - "docs": { - "stability": "stable", - }, - }, - "interfaces": [ - "jsii-calc.module2700.IFoo", - ], - "kind": "class", - "locationInModule": { - "filename": "lib/module2700/index.ts", - "line": 6, - }, - "methods": [ - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/module2700/index.ts", - "line": 8, - }, - "name": "bar", - "overrides": "jsii-calc.module2700.IFoo", - "returns": { - "type": { - "primitive": "string", - }, - }, - }, - ], - "name": "Base", - "namespace": "module2700", - "properties": [ - { - "docs": { - "stability": "stable", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/module2700/index.ts", - "line": 7, - }, - "name": "baz", - "overrides": "jsii-calc.module2700.IFoo", - "type": { - "primitive": "number", - }, - }, - ], - "symbolId": "lib/module2700/index:Base", - }, - "jsii-calc.module2700.Derived": { - "assembly": "jsii-calc", - "base": "jsii-calc.module2700.Base", - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.module2700.Derived", - "initializer": { - "docs": { - "stability": "stable", - }, - }, - "interfaces": [ - "jsii-calc.module2700.IFoo", - ], - "kind": "class", - "locationInModule": { - "filename": "lib/module2700/index.ts", - "line": 13, - }, - "methods": [ - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/module2700/index.ts", - "line": 14, - }, - "name": "zoo", - "returns": { - "type": { - "primitive": "string", - }, - }, - }, - ], - "name": "Derived", - "namespace": "module2700", - "symbolId": "lib/module2700/index:Derived", - }, - "jsii-calc.module2700.IFoo": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.module2700.IFoo", - "kind": "interface", - "locationInModule": { - "filename": "lib/module2700/index.ts", - "line": 1, - }, - "methods": [ - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/module2700/index.ts", - "line": 2, - }, - "name": "bar", - "returns": { - "type": { - "primitive": "string", - }, - }, - }, - ], - "name": "IFoo", - "namespace": "module2700", - "properties": [ - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/module2700/index.ts", - "line": 3, - }, - "name": "baz", - "type": { - "primitive": "number", - }, - }, - ], - "symbolId": "lib/module2700/index:IFoo", - }, - "jsii-calc.module2702.Baz": { - "assembly": "jsii-calc", - "base": "jsii-calc.module2702.Class3", - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.module2702.Baz", - "initializer": { - "docs": { - "stability": "stable", - }, - }, - "interfaces": [ - "jsii-calc.module2702.IBaz", - ], - "kind": "class", - "locationInModule": { - "filename": "lib/module2702/index.ts", - "line": 70, - }, - "methods": [ - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/module2702/index.ts", - "line": 71, - }, - "name": "bazMethod", - "overrides": "jsii-calc.module2702.IBaz", - }, - ], - "name": "Baz", - "namespace": "module2702", - "symbolId": "lib/module2702/index:Baz", - }, - "jsii-calc.module2702.Class1": { - "assembly": "jsii-calc", - "base": "@scope/jsii-calc-base.Base", - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.module2702.Class1", - "initializer": {}, - "kind": "class", - "locationInModule": { - "filename": "lib/module2702/index.ts", - "line": 6, - }, - "methods": [ - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/module2702/index.ts", - "line": 7, - }, - "name": "base", - }, - ], - "name": "Class1", - "namespace": "module2702", - "symbolId": "lib/module2702/index:Class1", - }, - "jsii-calc.module2702.Class2": { - "assembly": "jsii-calc", - "base": "@scope/jsii-calc-base.Base", - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.module2702.Class2", - "initializer": {}, - "kind": "class", - "locationInModule": { - "filename": "lib/module2702/index.ts", - "line": 12, - }, - "name": "Class2", - "namespace": "module2702", - "properties": [ - { - "docs": { - "stability": "stable", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/module2702/index.ts", - "line": 13, - }, - "name": "base", - "type": { - "primitive": "string", - }, - }, - ], - "symbolId": "lib/module2702/index:Class2", - }, - "jsii-calc.module2702.Class3": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.module2702.Class3", - "initializer": { - "docs": { - "stability": "stable", - }, - }, - "interfaces": [ - "@scope/jsii-calc-base.IBaseInterface", - ], - "kind": "class", - "locationInModule": { - "filename": "lib/module2702/index.ts", - "line": 16, - }, - "methods": [ - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/module2702/index.ts", - "line": 17, - }, - "name": "bar", - "overrides": "@scope/jsii-calc-base.IBaseInterface", - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/module2702/index.ts", - "line": 21, - }, - "name": "foo", - "overrides": "@scope/jsii-calc-base-of-base.IVeryBaseInterface", - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/module2702/index.ts", - "line": 25, - }, - "name": "iBaseInterface", - }, - ], - "name": "Class3", - "namespace": "module2702", - "symbolId": "lib/module2702/index:Class3", - }, - "jsii-calc.module2702.Construct": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.module2702.Construct", - "initializer": { - "docs": { - "stability": "stable", - }, - }, - "interfaces": [ - "jsii-calc.module2702.IConstruct", - ], - "kind": "class", - "locationInModule": { - "filename": "lib/module2702/index.ts", - "line": 48, - }, - "methods": [ - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/module2702/index.ts", - "line": 49, - }, - "name": "constructMethod", - "overrides": "jsii-calc.module2702.IConstruct", - }, - ], - "name": "Construct", - "namespace": "module2702", - "symbolId": "lib/module2702/index:Construct", - }, - "jsii-calc.module2702.IBaz": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.module2702.IBaz", - "interfaces": [ - "@scope/jsii-calc-base.IBaseInterface", - ], - "kind": "interface", - "locationInModule": { - "filename": "lib/module2702/index.ts", - "line": 66, - }, - "methods": [ - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/module2702/index.ts", - "line": 67, - }, - "name": "bazMethod", - }, - ], - "name": "IBaz", - "namespace": "module2702", - "symbolId": "lib/module2702/index:IBaz", - }, - "jsii-calc.module2702.IConstruct": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.module2702.IConstruct", - "kind": "interface", - "locationInModule": { - "filename": "lib/module2702/index.ts", - "line": 36, - }, - "methods": [ - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/module2702/index.ts", - "line": 37, - }, - "name": "constructMethod", - }, - ], - "name": "IConstruct", - "namespace": "module2702", - "symbolId": "lib/module2702/index:IConstruct", - }, - "jsii-calc.module2702.IFoo": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.module2702.IFoo", - "interfaces": [ - "@scope/jsii-calc-base.IBaseInterface", - ], - "kind": "interface", - "locationInModule": { - "filename": "lib/module2702/index.ts", - "line": 30, - }, - "name": "IFoo", - "namespace": "module2702", - "properties": [ - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/module2702/index.ts", - "line": 31, - }, - "name": "iBaseInterface", - "type": { - "primitive": "string", - }, - }, - ], - "symbolId": "lib/module2702/index:IFoo", - }, - "jsii-calc.module2702.IResource": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.module2702.IResource", - "interfaces": [ - "jsii-calc.module2702.IConstruct", - ], - "kind": "interface", - "locationInModule": { - "filename": "lib/module2702/index.ts", - "line": 40, - }, - "methods": [ - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/module2702/index.ts", - "line": 41, - }, - "name": "resourceMethod", - }, - ], - "name": "IResource", - "namespace": "module2702", - "symbolId": "lib/module2702/index:IResource", - }, - "jsii-calc.module2702.IVpc": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.module2702.IVpc", - "interfaces": [ - "jsii-calc.module2702.IResource", - ], - "kind": "interface", - "locationInModule": { - "filename": "lib/module2702/index.ts", - "line": 44, - }, - "methods": [ - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/module2702/index.ts", - "line": 45, - }, - "name": "vpcMethod", - }, - ], - "name": "IVpc", - "namespace": "module2702", - "symbolId": "lib/module2702/index:IVpc", - }, - "jsii-calc.module2702.Resource": { - "abstract": true, - "assembly": "jsii-calc", - "base": "jsii-calc.module2702.Construct", - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.module2702.Resource", - "initializer": { - "docs": { - "stability": "stable", - }, - }, - "interfaces": [ - "jsii-calc.module2702.IResource", - ], - "kind": "class", - "locationInModule": { - "filename": "lib/module2702/index.ts", - "line": 54, - }, - "methods": [ - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/module2702/index.ts", - "line": 55, - }, - "name": "resourceMethod", - "overrides": "jsii-calc.module2702.IResource", - }, - ], - "name": "Resource", - "namespace": "module2702", - "symbolId": "lib/module2702/index:Resource", - }, - "jsii-calc.module2702.Vpc": { - "assembly": "jsii-calc", - "base": "jsii-calc.module2702.Resource", - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.module2702.Vpc", - "initializer": { - "docs": { - "stability": "stable", - }, - }, - "interfaces": [ - "jsii-calc.module2702.IVpc", - ], - "kind": "class", - "locationInModule": { - "filename": "lib/module2702/index.ts", - "line": 60, - }, - "methods": [ - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/module2702/index.ts", - "line": 61, - }, - "name": "vpcMethod", - "overrides": "jsii-calc.module2702.IVpc", - }, - ], - "name": "Vpc", - "namespace": "module2702", - "symbolId": "lib/module2702/index:Vpc", - }, - "jsii-calc.nodirect.sub1.TypeFromSub1": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.nodirect.sub1.TypeFromSub1", - "initializer": { - "docs": { - "stability": "stable", - }, - }, - "kind": "class", - "locationInModule": { - "filename": "lib/no-direct-types/sub1/index.ts", - "line": 1, - }, - "methods": [ - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/no-direct-types/sub1/index.ts", - "line": 2, - }, - "name": "sub1", - "returns": { - "type": { - "primitive": "string", - }, - }, - }, - ], - "name": "TypeFromSub1", - "namespace": "nodirect.sub1", - "symbolId": "lib/no-direct-types/sub1/index:TypeFromSub1", - }, - "jsii-calc.nodirect.sub2.TypeFromSub2": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.nodirect.sub2.TypeFromSub2", - "initializer": { - "docs": { - "stability": "stable", - }, - }, - "kind": "class", - "locationInModule": { - "filename": "lib/no-direct-types/sub2/index.ts", - "line": 1, - }, - "methods": [ - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/no-direct-types/sub2/index.ts", - "line": 2, - }, - "name": "sub2", - "returns": { - "type": { - "primitive": "string", - }, - }, - }, - ], - "name": "TypeFromSub2", - "namespace": "nodirect.sub2", - "symbolId": "lib/no-direct-types/sub2/index:TypeFromSub2", - }, - "jsii-calc.onlystatic.OnlyStaticMethods": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - "summary": "Test for https://github.com/aws/jsii/issues/2617.", - }, - "fqn": "jsii-calc.onlystatic.OnlyStaticMethods", - "kind": "class", - "locationInModule": { - "filename": "lib/only-static/index.ts", - "line": 4, - }, - "methods": [ - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/only-static/index.ts", - "line": 5, - }, - "name": "staticMethod", - "returns": { - "type": { - "primitive": "string", - }, - }, - "static": true, - }, - ], - "name": "OnlyStaticMethods", - "namespace": "onlystatic", - "symbolId": "lib/only-static/index:OnlyStaticMethods", - }, - "jsii-calc.submodule.Default": { - "assembly": "jsii-calc", - "datatype": true, - "docs": { - "see": "https://github.com/aws/jsii/issues/2637", - "stability": "stable", - "summary": "A struct named "Default".", - }, - "fqn": "jsii-calc.submodule.Default", - "kind": "interface", - "locationInModule": { - "filename": "lib/submodule/issue2637.ts", - "line": 6, - }, - "name": "Default", - "namespace": "submodule", - "properties": [ - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/submodule/issue2637.ts", - "line": 7, - }, - "name": "foo", - "type": { - "primitive": "number", - }, - }, - ], - "symbolId": "lib/submodule/issue2637:Default", - }, - "jsii-calc.submodule.MyClass": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.submodule.MyClass", - "initializer": { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/submodule/my-class.ts", - "line": 12, - }, - "parameters": [ - { - "name": "props", - "type": { - "fqn": "jsii-calc.submodule.child.SomeStruct", - }, - }, - ], - }, - "interfaces": [ - "jsii-calc.submodule.nested_submodule.deeplyNested.INamespaced", - ], - "kind": "class", - "locationInModule": { - "filename": "lib/submodule/my-class.ts", - "line": 6, - }, - "methods": [ - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/submodule/my-class.ts", - "line": 14, - }, - "name": "methodWithSpecialParam", - "parameters": [ - { - "name": "param", - "type": { - "fqn": "jsii-calc.submodule.param.SpecialParameter", - }, - }, - ], - "returns": { - "type": { - "primitive": "string", - }, - }, - }, - ], - "name": "MyClass", - "namespace": "submodule", - "properties": [ - { - "docs": { - "stability": "stable", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/submodule/my-class.ts", - "line": 9, - }, - "name": "awesomeness", - "type": { - "fqn": "jsii-calc.submodule.child.Awesomeness", - }, - }, - { - "docs": { - "stability": "stable", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/submodule/my-class.ts", - "line": 7, - }, - "name": "definedAt", - "overrides": "jsii-calc.submodule.nested_submodule.deeplyNested.INamespaced", - "type": { - "primitive": "string", - }, - }, - { - "docs": { - "stability": "stable", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/submodule/my-class.ts", - "line": 8, - }, - "name": "goodness", - "type": { - "fqn": "jsii-calc.submodule.child.Goodness", - }, - }, - { - "docs": { - "stability": "stable", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/submodule/my-class.ts", - "line": 12, - }, - "name": "props", - "type": { - "fqn": "jsii-calc.submodule.child.SomeStruct", - }, - }, - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/submodule/my-class.ts", - "line": 10, - }, - "name": "allTypes", - "optional": true, - "type": { - "fqn": "jsii-calc.AllTypes", - }, - }, - ], - "symbolId": "lib/submodule/my-class:MyClass", - }, - "jsii-calc.submodule.back_references.MyClassReference": { - "assembly": "jsii-calc", - "datatype": true, - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.submodule.back_references.MyClassReference", - "kind": "interface", - "locationInModule": { - "filename": "lib/submodule/refers-to-parent/index.ts", - "line": 3, - }, - "name": "MyClassReference", - "namespace": "submodule.back_references", - "properties": [ - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/submodule/refers-to-parent/index.ts", - "line": 4, - }, - "name": "reference", - "type": { - "fqn": "jsii-calc.submodule.MyClass", - }, - }, - ], - "symbolId": "lib/submodule/refers-to-parent/index:MyClassReference", - }, - "jsii-calc.submodule.child.Awesomeness": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.submodule.child.Awesomeness", - "kind": "enum", - "locationInModule": { - "filename": "lib/submodule/child/index.ts", - "line": 15, - }, - "members": [ - { - "docs": { - "stability": "stable", - "summary": "It was awesome!", - }, - "name": "AWESOME", - }, - ], - "name": "Awesomeness", - "namespace": "submodule.child", - "symbolId": "lib/submodule/child/index:Awesomeness", - }, - "jsii-calc.submodule.child.Goodness": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.submodule.child.Goodness", - "kind": "enum", - "locationInModule": { - "filename": "lib/submodule/child/index.ts", - "line": 5, - }, - "members": [ - { - "docs": { - "stability": "stable", - "summary": "It's pretty good.", - }, - "name": "PRETTY_GOOD", - }, - { - "docs": { - "stability": "stable", - "summary": "It's really good.", - }, - "name": "REALLY_GOOD", - }, - { - "docs": { - "stability": "stable", - "summary": "It's amazingly good.", - }, - "name": "AMAZINGLY_GOOD", - }, - ], - "name": "Goodness", - "namespace": "submodule.child", - "symbolId": "lib/submodule/child/index:Goodness", - }, - "jsii-calc.submodule.child.InnerClass": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.submodule.child.InnerClass", - "initializer": { - "docs": { - "stability": "stable", - }, - }, - "kind": "class", - "locationInModule": { - "filename": "lib/submodule/child/index.ts", - "line": 37, - }, - "name": "InnerClass", - "namespace": "submodule.child", - "properties": [ - { - "const": true, - "docs": { - "stability": "stable", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/submodule/child/index.ts", - "line": 38, - }, - "name": "staticProp", - "static": true, - "type": { - "fqn": "jsii-calc.submodule.child.SomeStruct", - }, - }, - ], - "symbolId": "lib/submodule/child/index:InnerClass", - }, - "jsii-calc.submodule.child.KwargsProps": { - "assembly": "jsii-calc", - "datatype": true, - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.submodule.child.KwargsProps", - "interfaces": [ - "jsii-calc.submodule.child.SomeStruct", - ], - "kind": "interface", - "locationInModule": { - "filename": "lib/submodule/child/index.ts", - "line": 41, - }, - "name": "KwargsProps", - "namespace": "submodule.child", - "properties": [ - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/submodule/child/index.ts", - "line": 42, - }, - "name": "extra", - "optional": true, - "type": { - "primitive": "string", - }, - }, - ], - "symbolId": "lib/submodule/child/index:KwargsProps", - }, - "jsii-calc.submodule.child.OuterClass": { - "assembly": "jsii-calc", - "docs": { - "see": " : https://github.com/aws/jsii/pull/1706", - "stability": "stable", - "summary": "Checks that classes can self-reference during initialization.", - }, - "fqn": "jsii-calc.submodule.child.OuterClass", - "initializer": { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/submodule/child/index.ts", - "line": 27, - }, - }, - "kind": "class", - "locationInModule": { - "filename": "lib/submodule/child/index.ts", - "line": 24, - }, - "name": "OuterClass", - "namespace": "submodule.child", - "properties": [ - { - "docs": { - "stability": "stable", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/submodule/child/index.ts", - "line": 25, - }, - "name": "innerClass", - "type": { - "fqn": "jsii-calc.submodule.child.InnerClass", - }, - }, - ], - "symbolId": "lib/submodule/child/index:OuterClass", - }, - "jsii-calc.submodule.child.SomeEnum": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.submodule.child.SomeEnum", - "kind": "enum", - "locationInModule": { - "filename": "lib/submodule/child/index.ts", - "line": 31, - }, - "members": [ - { - "docs": { - "stability": "stable", - }, - "name": "SOME", - }, - ], - "name": "SomeEnum", - "namespace": "submodule.child", - "symbolId": "lib/submodule/child/index:SomeEnum", - }, - "jsii-calc.submodule.child.SomeStruct": { - "assembly": "jsii-calc", - "datatype": true, - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.submodule.child.SomeStruct", - "kind": "interface", - "locationInModule": { - "filename": "lib/submodule/child/index.ts", - "line": 34, - }, - "name": "SomeStruct", - "namespace": "submodule.child", - "properties": [ - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/submodule/child/index.ts", - "line": 35, - }, - "name": "prop", - "type": { - "fqn": "jsii-calc.submodule.child.SomeEnum", - }, - }, - ], - "symbolId": "lib/submodule/child/index:SomeStruct", - }, - "jsii-calc.submodule.child.Structure": { - "assembly": "jsii-calc", - "datatype": true, - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.submodule.child.Structure", - "kind": "interface", - "locationInModule": { - "filename": "lib/submodule/child/index.ts", - "line": 1, - }, - "name": "Structure", - "namespace": "submodule.child", - "properties": [ - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/submodule/child/index.ts", - "line": 2, - }, - "name": "bool", - "type": { - "primitive": "boolean", - }, - }, - ], - "symbolId": "lib/submodule/child/index:Structure", - }, - "jsii-calc.submodule.isolated.Kwargs": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - "summary": "Ensures imports are correctly registered for kwargs lifted properties from super-structs.", - }, - "fqn": "jsii-calc.submodule.isolated.Kwargs", - "kind": "class", - "locationInModule": { - "filename": "lib/submodule/isolated.ts", - "line": 7, - }, - "methods": [ - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/submodule/isolated.ts", - "line": 8, - }, - "name": "method", - "parameters": [ - { - "name": "props", - "optional": true, - "type": { - "fqn": "jsii-calc.submodule.child.KwargsProps", - }, - }, - ], - "returns": { - "type": { - "primitive": "boolean", - }, - }, - "static": true, - }, - ], - "name": "Kwargs", - "namespace": "submodule.isolated", - "symbolId": "lib/submodule/isolated:Kwargs", - }, - "jsii-calc.submodule.nested_submodule.Namespaced": { - "abstract": true, - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.submodule.nested_submodule.Namespaced", - "interfaces": [ - "jsii-calc.submodule.nested_submodule.deeplyNested.INamespaced", - ], - "kind": "class", - "locationInModule": { - "filename": "lib/submodule/nested_submodule.ts", - "line": 12, - }, - "name": "Namespaced", - "namespace": "submodule.nested_submodule", - "properties": [ - { - "docs": { - "stability": "stable", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/submodule/nested_submodule.ts", - "line": 13, - }, - "name": "definedAt", - "overrides": "jsii-calc.submodule.nested_submodule.deeplyNested.INamespaced", - "type": { - "primitive": "string", - }, - }, - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/submodule/nested_submodule.ts", - "line": 14, - }, - "name": "goodness", - "type": { - "fqn": "jsii-calc.submodule.child.Goodness", - }, - }, - ], - "symbolId": "lib/submodule/nested_submodule:nested_submodule.Namespaced", - }, - "jsii-calc.submodule.nested_submodule.deeplyNested.INamespaced": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.submodule.nested_submodule.deeplyNested.INamespaced", - "kind": "interface", - "locationInModule": { - "filename": "lib/submodule/nested_submodule.ts", - "line": 7, - }, - "name": "INamespaced", - "namespace": "submodule.nested_submodule.deeplyNested", - "properties": [ - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/submodule/nested_submodule.ts", - "line": 8, - }, - "name": "definedAt", - "type": { - "primitive": "string", - }, - }, - ], - "symbolId": "lib/submodule/nested_submodule:nested_submodule.deeplyNested.INamespaced", - }, - "jsii-calc.submodule.param.SpecialParameter": { - "assembly": "jsii-calc", - "datatype": true, - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.submodule.param.SpecialParameter", - "kind": "interface", - "locationInModule": { - "filename": "lib/submodule/param/index.ts", - "line": 1, - }, - "name": "SpecialParameter", - "namespace": "submodule.param", - "properties": [ - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "immutable": true, - "locationInModule": { - "filename": "lib/submodule/param/index.ts", - "line": 2, - }, - "name": "value", - "type": { - "primitive": "string", - }, - }, - ], - "symbolId": "lib/submodule/param/index:SpecialParameter", - }, - "jsii-calc.submodule.returnsparam.ReturnsSpecialParameter": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.submodule.returnsparam.ReturnsSpecialParameter", - "initializer": { - "docs": { - "stability": "stable", - }, - }, - "kind": "class", - "locationInModule": { - "filename": "lib/submodule/returns-param/index.ts", - "line": 3, - }, - "methods": [ - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/submodule/returns-param/index.ts", - "line": 4, - }, - "name": "returnsSpecialParam", - "returns": { - "type": { - "fqn": "jsii-calc.submodule.param.SpecialParameter", - }, - }, - }, - ], - "name": "ReturnsSpecialParameter", - "namespace": "submodule.returnsparam", - "symbolId": "lib/submodule/returns-param/index:ReturnsSpecialParameter", - }, - "jsii-calc.union.ConsumesUnion": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.union.ConsumesUnion", - "kind": "class", - "locationInModule": { - "filename": "lib/union.ts", - "line": 15, - }, - "methods": [ - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/union.ts", - "line": 16, - }, - "name": "unionType", - "parameters": [ - { - "name": "param", - "type": { - "union": { - "types": [ - { - "fqn": "@scope/jsii-calc-lib.IFriendly", - }, - { - "fqn": "jsii-calc.union.IResolvable", - }, - { - "fqn": "jsii-calc.union.Resolvable", - }, - ], - }, - }, - }, - ], - "static": true, - }, - ], - "name": "ConsumesUnion", - "namespace": "union", - "symbolId": "lib/union:ConsumesUnion", - }, - "jsii-calc.union.IResolvable": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.union.IResolvable", - "kind": "interface", - "locationInModule": { - "filename": "lib/union.ts", - "line": 3, - }, - "methods": [ - { - "abstract": true, - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/union.ts", - "line": 4, - }, - "name": "resolve", - "returns": { - "type": { - "primitive": "any", - }, - }, - }, - ], - "name": "IResolvable", - "namespace": "union", - "symbolId": "lib/union:IResolvable", - }, - "jsii-calc.union.Resolvable": { - "assembly": "jsii-calc", - "docs": { - "stability": "stable", - }, - "fqn": "jsii-calc.union.Resolvable", - "interfaces": [ - "jsii-calc.union.IResolvable", - ], - "kind": "class", - "locationInModule": { - "filename": "lib/union.ts", - "line": 7, - }, - "methods": [ - { - "docs": { - "stability": "stable", - }, - "locationInModule": { - "filename": "lib/union.ts", - "line": 10, - }, - "name": "resolve", - "overrides": "jsii-calc.union.IResolvable", - "returns": { - "type": { - "primitive": "any", - }, - }, - }, - ], - "name": "Resolvable", - "namespace": "union", - "symbolId": "lib/union:Resolvable", - }, - }, - "version": "3.20.120", -} -`;