fixtures/jsii-calc/lib/module2702/index.ts (55 lines of code) (raw):
// member has the same name as a base class
// @see https://github.com/aws/jsii/issues/2702
import { Base, IBaseInterface } from '@scope/jsii-calc-base';
export class Class1 extends Base {
public base() {
return;
}
}
export class Class2 extends Base {
public readonly base = 'hello';
}
export class Class3 implements IBaseInterface {
public bar(): void {
return;
}
public foo(): void {
return;
}
public iBaseInterface() {
return;
}
}
export interface IFoo extends IBaseInterface {
readonly iBaseInterface: string;
}
// See https://github.com/aws/aws-cdk/issues/13474
export interface IConstruct {
constructMethod(): void;
}
export interface IResource extends IConstruct {
resourceMethod(): void;
}
export interface IVpc extends IResource {
vpcMethod(): void;
}
export class Construct implements IConstruct {
public constructMethod(): void {
return;
}
}
export abstract class Resource extends Construct implements IResource {
public resourceMethod(): void {
return;
}
}
export class Vpc extends Resource implements IVpc {
public vpcMethod(): void {
return;
}
}
export interface IBaz extends IBaseInterface {
bazMethod(): void;
}
export class Baz extends Class3 implements IBaz {
public bazMethod(): void {
return;
}
}