@alloy-js/csharp 0.18.0-dev.4 → 0.18.0-dev.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (36) hide show
  1. package/dist/src/components/{Class.d.ts → ClassDeclaration.d.ts} +27 -3
  2. package/dist/src/components/ClassDeclaration.d.ts.map +1 -0
  3. package/dist/src/components/{Class.js → ClassDeclaration.js} +25 -2
  4. package/dist/src/components/EnumDeclaration.d.ts +34 -0
  5. package/dist/src/components/EnumDeclaration.d.ts.map +1 -0
  6. package/dist/src/components/{Enum.js → EnumDeclaration.js} +21 -2
  7. package/dist/src/components/index.d.ts +2 -2
  8. package/dist/src/components/index.d.ts.map +1 -1
  9. package/dist/src/components/index.js +2 -2
  10. package/dist/src/components/stc/index.d.ts +2 -2
  11. package/dist/src/components/stc/index.d.ts.map +1 -1
  12. package/dist/src/components/stc/index.js +2 -2
  13. package/dist/test/class-method.test.js +2 -2
  14. package/dist/test/class.test.js +11 -11
  15. package/dist/test/enum.test.js +6 -6
  16. package/dist/test/namespace.test.js +4 -4
  17. package/dist/test/projectdirectory.test.js +4 -4
  18. package/dist/test/sourcefile.test.js +2 -2
  19. package/dist/test/using.test.js +4 -4
  20. package/dist/tsconfig.tsbuildinfo +1 -1
  21. package/package.json +1 -1
  22. package/src/components/{Class.tsx → ClassDeclaration.tsx} +27 -4
  23. package/src/components/{Enum.tsx → EnumDeclaration.tsx} +21 -2
  24. package/src/components/index.ts +2 -2
  25. package/src/components/stc/index.ts +2 -2
  26. package/temp/api.json +60 -60
  27. package/test/class-method.test.tsx +3 -3
  28. package/test/class.test.tsx +33 -19
  29. package/test/enum.test.tsx +13 -11
  30. package/test/namespace.test.tsx +4 -4
  31. package/test/projectdirectory.test.tsx +4 -4
  32. package/test/sourcefile.test.tsx +2 -2
  33. package/test/using.test.tsx +14 -6
  34. package/dist/src/components/Class.d.ts.map +0 -1
  35. package/dist/src/components/Enum.d.ts +0 -14
  36. package/dist/src/components/Enum.d.ts.map +0 -1
@@ -1,12 +1,36 @@
1
1
  import * as core from "@alloy-js/core";
2
2
  import { AccessModifiers } from "../modifiers.js";
3
- import { ParameterProps } from "./Parameters.js";
3
+ import { ParameterProps } from "./Parameters.jsx";
4
4
  export interface ClassProps extends Omit<core.DeclarationProps, "nameKind">, AccessModifiers {
5
5
  name: string;
6
6
  refkey?: core.Refkey;
7
7
  typeParameters?: Record<string, core.Refkey>;
8
8
  }
9
- export declare function Class(props: ClassProps): core.Children;
9
+ /**
10
+ * CSharp class declaration.
11
+ * @example
12
+ * ```tsx
13
+ * <ClassDeclaration public name="MyClass">
14
+ * <ClassMember public name="MyField" type="int" />
15
+ * <ClassConstructor>
16
+ * <Parameter name="value" type="int" />
17
+ * this.MyField = value;
18
+ * </ClassConstructor>
19
+ * </ClassDeclaration>
20
+ * ```
21
+ * This will produce:
22
+ * ```csharp
23
+ * public class MyClass
24
+ * {
25
+ * public int MyField;
26
+ * public MyClass(int value)
27
+ * {
28
+ * this.MyField = value;
29
+ * }
30
+ * }
31
+ * ```
32
+ */
33
+ export declare function ClassDeclaration(props: ClassProps): core.Children;
10
34
  export interface ClassConstructorProps extends AccessModifiers {
11
35
  parameters?: Array<ParameterProps>;
12
36
  refkey?: core.Refkey;
@@ -20,4 +44,4 @@ export interface ClassMemberProps extends AccessModifiers {
20
44
  refkey?: core.Refkey;
21
45
  }
22
46
  export declare function ClassMember(props: ClassMemberProps): core.Children;
23
- //# sourceMappingURL=Class.d.ts.map
47
+ //# sourceMappingURL=ClassDeclaration.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ClassDeclaration.d.ts","sourceRoot":"","sources":["../../../src/components/ClassDeclaration.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,IAAI,MAAM,gBAAgB,CAAC;AACvC,OAAO,EACL,eAAe,EAGhB,MAAM,iBAAiB,CAAC;AAKzB,OAAO,EAAE,cAAc,EAAc,MAAM,kBAAkB,CAAC;AAG9D,MAAM,WAAW,UACf,SAAQ,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE,UAAU,CAAC,EAC7C,eAAe;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,IAAI,CAAC,MAAM,CAAC;IACrB,cAAc,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;CAC9C;AAED;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,UAAU,iBAqDjD;AAED,MAAM,WAAW,qBAAsB,SAAQ,eAAe;IAC5D,UAAU,CAAC,EAAE,KAAK,CAAC,cAAc,CAAC,CAAC;IACnC,MAAM,CAAC,EAAE,IAAI,CAAC,MAAM,CAAC;IACrB,MAAM,CAAC,EAAE,IAAI,CAAC,YAAY,CAAC;IAC3B,QAAQ,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC;CAC1B;AAGD,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,qBAAqB,iBAkC5D;AAGD,MAAM,WAAW,gBAAiB,SAAQ,eAAe;IACvD,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,IAAI,CAAC,QAAQ,CAAC;IACpB,MAAM,CAAC,EAAE,IAAI,CAAC,MAAM,CAAC;CACtB;AAGD,wBAAgB,WAAW,CAAC,KAAK,EAAE,gBAAgB,iBAyBlD"}
@@ -9,8 +9,31 @@ import { Parameters } from "./Parameters.js";
9
9
 
10
10
  // properties for creating a class
11
11
 
12
- // a C# class declaration
13
- export function Class(props) {
12
+ /**
13
+ * CSharp class declaration.
14
+ * @example
15
+ * ```tsx
16
+ * <ClassDeclaration public name="MyClass">
17
+ * <ClassMember public name="MyField" type="int" />
18
+ * <ClassConstructor>
19
+ * <Parameter name="value" type="int" />
20
+ * this.MyField = value;
21
+ * </ClassConstructor>
22
+ * </ClassDeclaration>
23
+ * ```
24
+ * This will produce:
25
+ * ```csharp
26
+ * public class MyClass
27
+ * {
28
+ * public int MyField;
29
+ * public MyClass(int value)
30
+ * {
31
+ * this.MyField = value;
32
+ * }
33
+ * }
34
+ * ```
35
+ */
36
+ export function ClassDeclaration(props) {
14
37
  const name = useCSharpNamePolicy().getName(props.name, "class");
15
38
  const thisClassSymbol = new CSharpOutputSymbol(name, {
16
39
  refkeys: props.refkey
@@ -0,0 +1,34 @@
1
+ import * as core from "@alloy-js/core";
2
+ import { AccessModifiers } from "../modifiers.js";
3
+ export interface EnumProps extends AccessModifiers {
4
+ name: string;
5
+ refkey?: core.Refkey;
6
+ children?: core.Children;
7
+ }
8
+ /**
9
+ * A C# enum declaration
10
+ * @example
11
+ * ```tsx
12
+ * <EnumDeclaration public name="Color">
13
+ * <EnumMember name="Red" />
14
+ * <EnumMember name="Green" />
15
+ * <EnumMember name="Blue" />
16
+ * </EnumDeclaration>
17
+ * ```
18
+ * This will produce:
19
+ * ```csharp
20
+ * public enum Color
21
+ * {
22
+ * Red,
23
+ * Green,
24
+ * Blue
25
+ * }
26
+ * ```
27
+ */
28
+ export declare function EnumDeclaration(props: EnumProps): core.Children;
29
+ export interface EnumMemberProps {
30
+ name: string;
31
+ refkey?: core.Refkey;
32
+ }
33
+ export declare function EnumMember(props: EnumMemberProps): core.Children;
34
+ //# sourceMappingURL=EnumDeclaration.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EnumDeclaration.d.ts","sourceRoot":"","sources":["../../../src/components/EnumDeclaration.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,IAAI,MAAM,gBAAgB,CAAC;AACvC,OAAO,EACL,eAAe,EAGhB,MAAM,iBAAiB,CAAC;AAOzB,MAAM,WAAW,SAAU,SAAQ,eAAe;IAChD,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,IAAI,CAAC,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC;CAC1B;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,eAAe,CAAC,KAAK,EAAE,SAAS,iBAgC/C;AAGD,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,IAAI,CAAC,MAAM,CAAC;CACtB;AAGD,wBAAgB,UAAU,CAAC,KAAK,EAAE,eAAe,iBAmBhD"}
@@ -8,8 +8,27 @@ import { Name } from "./Name.js";
8
8
 
9
9
  // properties for creating an enum
10
10
 
11
- // a C# enum declaration
12
- export function Enum(props) {
11
+ /**
12
+ * A C# enum declaration
13
+ * @example
14
+ * ```tsx
15
+ * <EnumDeclaration public name="Color">
16
+ * <EnumMember name="Red" />
17
+ * <EnumMember name="Green" />
18
+ * <EnumMember name="Blue" />
19
+ * </EnumDeclaration>
20
+ * ```
21
+ * This will produce:
22
+ * ```csharp
23
+ * public enum Color
24
+ * {
25
+ * Red,
26
+ * Green,
27
+ * Blue
28
+ * }
29
+ * ```
30
+ */
31
+ export function EnumDeclaration(props) {
13
32
  const name = useCSharpNamePolicy().getName(props.name, "enum");
14
33
  const scope = useCSharpScope();
15
34
  const thisEnumSymbol = new CSharpOutputSymbol(name, {
@@ -1,7 +1,7 @@
1
- export * from "./Class.js";
1
+ export * from "./ClassDeclaration.jsx";
2
2
  export { ClassMethod, type ClassMethodProps } from "./ClassMethod.jsx";
3
3
  export * from "./Declaration.js";
4
- export * from "./Enum.js";
4
+ export * from "./EnumDeclaration.jsx";
5
5
  export * from "./Name.js";
6
6
  export * from "./Namespace.js";
7
7
  export * from "./Parameters.js";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC;AAC3B,OAAO,EAAE,WAAW,EAAE,KAAK,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AACvE,cAAc,kBAAkB,CAAC;AACjC,cAAc,WAAW,CAAC;AAC1B,cAAc,WAAW,CAAC;AAC1B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,iBAAiB,CAAC;AAChC,cAAc,uBAAuB,CAAC;AACtC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,iBAAiB,CAAC;AAChC,cAAc,qBAAqB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/index.ts"],"names":[],"mappings":"AAAA,cAAc,wBAAwB,CAAC;AACvC,OAAO,EAAE,WAAW,EAAE,KAAK,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AACvE,cAAc,kBAAkB,CAAC;AACjC,cAAc,uBAAuB,CAAC;AACtC,cAAc,WAAW,CAAC;AAC1B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,iBAAiB,CAAC;AAChC,cAAc,uBAAuB,CAAC;AACtC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,iBAAiB,CAAC;AAChC,cAAc,qBAAqB,CAAC"}
@@ -1,7 +1,7 @@
1
- export * from "./Class.js";
1
+ export * from "./ClassDeclaration.js";
2
2
  export { ClassMethod } from "./ClassMethod.js";
3
3
  export * from "./Declaration.js";
4
- export * from "./Enum.js";
4
+ export * from "./EnumDeclaration.js";
5
5
  export * from "./Name.js";
6
6
  export * from "./Namespace.js";
7
7
  export * from "./Parameters.js";
@@ -1,10 +1,10 @@
1
1
  import * as core from "@alloy-js/core";
2
2
  import * as base from "../index.js";
3
- export declare const Class: core.StcSignature<base.ClassProps>;
3
+ export declare const ClassDeclaration: core.StcSignature<base.ClassProps>;
4
4
  export declare const ClassConstructor: core.StcSignature<base.ClassConstructorProps>;
5
5
  export declare const ClassMember: core.StcSignature<base.ClassMemberProps>;
6
6
  export declare const ClassMethod: core.StcSignature<base.ClassMethodProps>;
7
- export declare const Enum: core.StcSignature<base.EnumProps>;
7
+ export declare const EnumDeclaration: core.StcSignature<base.EnumProps>;
8
8
  export declare const EnumMember: core.StcSignature<base.EnumMemberProps>;
9
9
  export declare const Parameter: core.StcSignature<base.ParameterProps>;
10
10
  export declare const Parameters: core.StcSignature<base.ParametersProps>;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/stc/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,IAAI,MAAM,gBAAgB,CAAC;AACvC,OAAO,KAAK,IAAI,MAAM,aAAa,CAAC;AAEpC,eAAO,MAAM,KAAK,oCAAuB,CAAC;AAC1C,eAAO,MAAM,gBAAgB,+CAAkC,CAAC;AAChE,eAAO,MAAM,WAAW,0CAA6B,CAAC;AACtD,eAAO,MAAM,WAAW,0CAA6B,CAAC;AACtD,eAAO,MAAM,IAAI,mCAAsB,CAAC;AACxC,eAAO,MAAM,UAAU,yCAA4B,CAAC;AACpD,eAAO,MAAM,SAAS,wCAA2B,CAAC;AAClD,eAAO,MAAM,UAAU,yCAA4B,CAAC;AACpD,eAAO,MAAM,gBAAgB,+CAAkC,CAAC;AAChE,eAAO,MAAM,cAAc,6CAAgC,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/stc/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,IAAI,MAAM,gBAAgB,CAAC;AACvC,OAAO,KAAK,IAAI,MAAM,aAAa,CAAC;AAEpC,eAAO,MAAM,gBAAgB,oCAAkC,CAAC;AAChE,eAAO,MAAM,gBAAgB,+CAAkC,CAAC;AAChE,eAAO,MAAM,WAAW,0CAA6B,CAAC;AACtD,eAAO,MAAM,WAAW,0CAA6B,CAAC;AACtD,eAAO,MAAM,eAAe,mCAAiC,CAAC;AAC9D,eAAO,MAAM,UAAU,yCAA4B,CAAC;AACpD,eAAO,MAAM,SAAS,wCAA2B,CAAC;AAClD,eAAO,MAAM,UAAU,yCAA4B,CAAC;AACpD,eAAO,MAAM,gBAAgB,+CAAkC,CAAC;AAChE,eAAO,MAAM,cAAc,6CAAgC,CAAC"}
@@ -1,10 +1,10 @@
1
1
  import * as core from "@alloy-js/core";
2
2
  import * as base from "../index.js";
3
- export const Class = core.stc(base.Class);
3
+ export const ClassDeclaration = core.stc(base.ClassDeclaration);
4
4
  export const ClassConstructor = core.stc(base.ClassConstructor);
5
5
  export const ClassMember = core.stc(base.ClassMember);
6
6
  export const ClassMethod = core.stc(base.ClassMethod);
7
- export const Enum = core.stc(base.Enum);
7
+ export const EnumDeclaration = core.stc(base.EnumDeclaration);
8
8
  export const EnumMember = core.stc(base.EnumMember);
9
9
  export const Parameter = core.stc(base.Parameter);
10
10
  export const Parameters = core.stc(base.Parameters);
@@ -1,10 +1,10 @@
1
1
  import { memo as _$memo, createComponent as _$createComponent, mergeProps as _$mergeProps } from "@alloy-js/core/jsx-runtime";
2
2
  import { describe, expect, it } from "vitest";
3
- import { Class, ClassMethod } from "../src/index.js";
3
+ import { ClassDeclaration, ClassMethod } from "../src/index.js";
4
4
  import { TestNamespace } from "./utils.js";
5
5
  const Wrapper = props => _$createComponent(TestNamespace, {
6
6
  get children() {
7
- return _$createComponent(Class, {
7
+ return _$createComponent(ClassDeclaration, {
8
8
  "public": true,
9
9
  name: "TestClass",
10
10
  get children() {
@@ -5,7 +5,7 @@ import { expect, it } from "vitest";
5
5
  import * as csharp from "../src/index.js";
6
6
  import * as utils from "./utils.js";
7
7
  it("declares class with no members", () => {
8
- const res = utils.toSourceText(_$createComponent(csharp.Class, {
8
+ const res = utils.toSourceText(_$createComponent(csharp.ClassDeclaration, {
9
9
  "public": true,
10
10
  name: "TestClass"
11
11
  }));
@@ -17,7 +17,7 @@ it("declares class with no members", () => {
17
17
  `);
18
18
  });
19
19
  it("declares class with some members", () => {
20
- const res = utils.toSourceText(_$createComponent(csharp.Class, {
20
+ const res = utils.toSourceText(_$createComponent(csharp.ClassDeclaration, {
21
21
  "public": true,
22
22
  name: "TestClass",
23
23
  get children() {
@@ -48,7 +48,7 @@ it("declares class with some members", () => {
48
48
  `);
49
49
  });
50
50
  it("declares class with some methods", () => {
51
- const res = utils.toSourceText(_$createComponent(csharp.Class, {
51
+ const res = utils.toSourceText(_$createComponent(csharp.ClassDeclaration, {
52
52
  "public": true,
53
53
  name: "TestClass",
54
54
  get children() {
@@ -99,7 +99,7 @@ it("uses refkeys for members, params, and return type", () => {
99
99
  return _$createComponent(csharp.SourceFile, {
100
100
  path: "Test.cs",
101
101
  get children() {
102
- return [_$createComponent(csharp.Enum, {
102
+ return [_$createComponent(csharp.EnumDeclaration, {
103
103
  "public": true,
104
104
  name: "TestEnum",
105
105
  refkey: enumTypeRefkey,
@@ -116,15 +116,15 @@ it("uses refkeys for members, params, and return type", () => {
116
116
  }
117
117
  });
118
118
  }
119
- }), _$createIntrinsic("hbr", {}), _$createComponent(csharp.Class, {
119
+ }), _$createIntrinsic("hbr", {}), _$createComponent(csharp.ClassDeclaration, {
120
120
  "public": true,
121
121
  name: "TestInput",
122
122
  refkey: inputTypeRefkey
123
- }), _$createIntrinsic("hbr", {}), _$createComponent(csharp.Class, {
123
+ }), _$createIntrinsic("hbr", {}), _$createComponent(csharp.ClassDeclaration, {
124
124
  "public": true,
125
125
  name: "TestResult",
126
126
  refkey: testResultTypeRefkey
127
- }), _$createIntrinsic("hbr", {}), _$createComponent(csharp.Class, {
127
+ }), _$createIntrinsic("hbr", {}), _$createComponent(csharp.ClassDeclaration, {
128
128
  "public": true,
129
129
  name: "TestClass",
130
130
  get children() {
@@ -175,7 +175,7 @@ it("declares class with generic parameters", () => {
175
175
  T: core.refkey(),
176
176
  U: core.refkey()
177
177
  };
178
- const res = utils.toSourceText(_$createComponent(csharp.Class, {
178
+ const res = utils.toSourceText(_$createComponent(csharp.ClassDeclaration, {
179
179
  "public": true,
180
180
  name: "TestClass",
181
181
  typeParameters: typeParameters,
@@ -207,7 +207,7 @@ it("declares class with generic parameters", () => {
207
207
  `);
208
208
  });
209
209
  it("declares class with invalid members", () => {
210
- const decl = _$createComponent(csharp.Class, {
210
+ const decl = _$createComponent(csharp.ClassDeclaration, {
211
211
  "public": true,
212
212
  name: "TestClass",
213
213
  get children() {
@@ -221,7 +221,7 @@ it("declares class with invalid members", () => {
221
221
  expect(() => utils.toSourceText(decl)).toThrow("can't define an enum member outside of an enum-decl scope");
222
222
  });
223
223
  it("declares class with constructor", () => {
224
- const res = utils.toSourceText(_$createComponent(csharp.Class, {
224
+ const res = utils.toSourceText(_$createComponent(csharp.ClassDeclaration, {
225
225
  "public": true,
226
226
  name: "TestClass",
227
227
  get children() {
@@ -254,7 +254,7 @@ it("declares class with constructor params and assigns values to fields", () =>
254
254
  type: "int",
255
255
  refkey: paramSizeRefkey
256
256
  }];
257
- const res = utils.toSourceText(_$createComponent(csharp.Class, {
257
+ const res = utils.toSourceText(_$createComponent(csharp.ClassDeclaration, {
258
258
  "public": true,
259
259
  name: "TestClass",
260
260
  get children() {
@@ -5,7 +5,7 @@ import { expect, it } from "vitest";
5
5
  import * as csharp from "../src/index.js";
6
6
  import * as utils from "./utils.js";
7
7
  it("declares enum with no members", () => {
8
- const res = utils.toSourceText(_$createComponent(csharp.Enum, {
8
+ const res = utils.toSourceText(_$createComponent(csharp.EnumDeclaration, {
9
9
  "public": true,
10
10
  name: "TestEnum"
11
11
  }));
@@ -17,7 +17,7 @@ it("declares enum with no members", () => {
17
17
  `);
18
18
  });
19
19
  it("declares enum with members", () => {
20
- const res = utils.toSourceText(_$createComponent(csharp.Enum, {
20
+ const res = utils.toSourceText(_$createComponent(csharp.EnumDeclaration, {
21
21
  "public": true,
22
22
  name: "TestEnum",
23
23
  get children() {
@@ -40,7 +40,7 @@ it("declares enum with members", () => {
40
40
  `);
41
41
  });
42
42
  it("applies naming policy to enum and members", () => {
43
- const res = utils.toSourceText(_$createComponent(csharp.Enum, {
43
+ const res = utils.toSourceText(_$createComponent(csharp.EnumDeclaration, {
44
44
  "public": true,
45
45
  name: "testEnum",
46
46
  get children() {
@@ -73,7 +73,7 @@ it("can reference things by refkey", () => {
73
73
  return _$createComponent(csharp.SourceFile, {
74
74
  path: "Test.cs",
75
75
  get children() {
76
- return [_$createComponent(csharp.Enum, {
76
+ return [_$createComponent(csharp.EnumDeclaration, {
77
77
  "public": true,
78
78
  name: "TestEnum",
79
79
  refkey: enumRK,
@@ -116,7 +116,7 @@ it("can reference things by refkey across files", () => {
116
116
  return [_$createComponent(csharp.SourceFile, {
117
117
  path: "Test.cs",
118
118
  get children() {
119
- return [_$createComponent(csharp.Enum, {
119
+ return [_$createComponent(csharp.EnumDeclaration, {
120
120
  "public": true,
121
121
  name: "TestEnum",
122
122
  get children() {
@@ -131,7 +131,7 @@ it("can reference things by refkey across files", () => {
131
131
  }), _$createComponent(csharp.SourceFile, {
132
132
  path: "Other.cs",
133
133
  get children() {
134
- return [_$createComponent(csharp.Enum, {
134
+ return [_$createComponent(csharp.EnumDeclaration, {
135
135
  "public": true,
136
136
  name: "OtherEnum",
137
137
  refkey: enumRK,
@@ -12,7 +12,7 @@ it("defines multiple namespaces and source files with unique content", () => {
12
12
  return [_$createComponent(csharp.SourceFile, {
13
13
  path: "Model1.cs",
14
14
  get children() {
15
- return _$createComponent(csharp.Class, {
15
+ return _$createComponent(csharp.ClassDeclaration, {
16
16
  "public": true,
17
17
  name: "Model1"
18
18
  });
@@ -20,7 +20,7 @@ it("defines multiple namespaces and source files with unique content", () => {
20
20
  }), _$createComponent(csharp.SourceFile, {
21
21
  path: "Model2.cs",
22
22
  get children() {
23
- return _$createComponent(csharp.Class, {
23
+ return _$createComponent(csharp.ClassDeclaration, {
24
24
  "public": true,
25
25
  name: "Model2"
26
26
  });
@@ -33,7 +33,7 @@ it("defines multiple namespaces and source files with unique content", () => {
33
33
  return [_$createComponent(csharp.SourceFile, {
34
34
  path: "Model3.cs",
35
35
  get children() {
36
- return _$createComponent(csharp.Class, {
36
+ return _$createComponent(csharp.ClassDeclaration, {
37
37
  "public": true,
38
38
  name: "Model3"
39
39
  });
@@ -41,7 +41,7 @@ it("defines multiple namespaces and source files with unique content", () => {
41
41
  }), _$createComponent(csharp.SourceFile, {
42
42
  path: "Model4.cs",
43
43
  get children() {
44
- return _$createComponent(csharp.Class, {
44
+ return _$createComponent(csharp.ClassDeclaration, {
45
45
  "public": true,
46
46
  name: "Model4"
47
47
  });
@@ -18,7 +18,7 @@ it("defines a project directory file with multiple source files", () => {
18
18
  return [_$createComponent(csharp.SourceFile, {
19
19
  path: "Test1.cs",
20
20
  get children() {
21
- return _$createComponent(csharp.Class, {
21
+ return _$createComponent(csharp.ClassDeclaration, {
22
22
  "public": true,
23
23
  name: "TestClass1"
24
24
  });
@@ -26,7 +26,7 @@ it("defines a project directory file with multiple source files", () => {
26
26
  }), _$createComponent(csharp.SourceFile, {
27
27
  path: "Test2.cs",
28
28
  get children() {
29
- return _$createComponent(csharp.Class, {
29
+ return _$createComponent(csharp.ClassDeclaration, {
30
30
  "public": true,
31
31
  name: "TestClass2"
32
32
  });
@@ -82,7 +82,7 @@ it("defines a project directory file with multiple source files and a custom TFM
82
82
  return [_$createComponent(csharp.SourceFile, {
83
83
  path: "Test1.cs",
84
84
  get children() {
85
- return _$createComponent(csharp.Class, {
85
+ return _$createComponent(csharp.ClassDeclaration, {
86
86
  "public": true,
87
87
  name: "TestClass1"
88
88
  });
@@ -90,7 +90,7 @@ it("defines a project directory file with multiple source files and a custom TFM
90
90
  }), _$createComponent(csharp.SourceFile, {
91
91
  path: "Test2.cs",
92
92
  get children() {
93
- return _$createComponent(csharp.Class, {
93
+ return _$createComponent(csharp.ClassDeclaration, {
94
94
  "public": true,
95
95
  name: "TestClass2"
96
96
  });
@@ -12,7 +12,7 @@ it("defines multiple source files with unique content", () => {
12
12
  return [_$createComponent(csharp.SourceFile, {
13
13
  path: "Test1.cs",
14
14
  get children() {
15
- return _$createComponent(csharp.Class, {
15
+ return _$createComponent(csharp.ClassDeclaration, {
16
16
  "public": true,
17
17
  name: "TestClass1"
18
18
  });
@@ -20,7 +20,7 @@ it("defines multiple source files with unique content", () => {
20
20
  }), _$createComponent(csharp.SourceFile, {
21
21
  path: "Test2.cs",
22
22
  get children() {
23
- return _$createComponent(csharp.Class, {
23
+ return _$createComponent(csharp.ClassDeclaration, {
24
24
  "public": true,
25
25
  name: "TestClass2"
26
26
  });
@@ -63,15 +63,15 @@ it("adds using statement across namespaces", () => {
63
63
  return _$createComponent(csharp.SourceFile, {
64
64
  path: "Models.cs",
65
65
  get children() {
66
- return [_$createComponent(csharp.Class, {
66
+ return [_$createComponent(csharp.ClassDeclaration, {
67
67
  "public": true,
68
68
  name: "Input",
69
69
  refkey: inputTypeRefkey
70
- }), _$createIntrinsic("hbr", {}), _$createComponent(csharp.Class, {
70
+ }), _$createIntrinsic("hbr", {}), _$createComponent(csharp.ClassDeclaration, {
71
71
  "public": true,
72
72
  name: "Output",
73
73
  refkey: outputTypeRefkey
74
- }), _$createIntrinsic("hbr", {}), _$createComponent(csharp.Enum, {
74
+ }), _$createIntrinsic("hbr", {}), _$createComponent(csharp.EnumDeclaration, {
75
75
  "public": true,
76
76
  name: "TestEnum",
77
77
  get children() {
@@ -93,7 +93,7 @@ it("adds using statement across namespaces", () => {
93
93
  path: "Client.cs",
94
94
  using: ["System"],
95
95
  get children() {
96
- return [_$createComponent(csharp.Class, {
96
+ return [_$createComponent(csharp.ClassDeclaration, {
97
97
  "public": true,
98
98
  name: "Client",
99
99
  get children() {