@goast/kotlin 0.1.17 → 0.2.0

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 (179) hide show
  1. package/cjs/index.js +3 -0
  2. package/cjs/lib/ast/_index.js +81 -0
  3. package/cjs/lib/ast/common.js +2 -0
  4. package/cjs/lib/ast/index.js +5 -0
  5. package/cjs/lib/ast/node.js +10 -0
  6. package/cjs/lib/ast/nodes/annotation.js +39 -0
  7. package/cjs/lib/ast/nodes/argument.js +32 -0
  8. package/cjs/lib/ast/nodes/call.js +37 -0
  9. package/cjs/lib/ast/nodes/class.js +94 -0
  10. package/cjs/lib/ast/nodes/collection-literal.js +24 -0
  11. package/cjs/lib/ast/nodes/constructor.js +75 -0
  12. package/cjs/lib/ast/nodes/doc-tag.js +60 -0
  13. package/cjs/lib/ast/nodes/doc.js +55 -0
  14. package/cjs/lib/ast/nodes/enum-value.js +50 -0
  15. package/cjs/lib/ast/nodes/enum.js +83 -0
  16. package/cjs/lib/ast/nodes/function.js +105 -0
  17. package/cjs/lib/ast/nodes/generic-parameter.js +29 -0
  18. package/cjs/lib/ast/nodes/init-block.js +19 -0
  19. package/cjs/lib/ast/nodes/interface.js +68 -0
  20. package/cjs/lib/ast/nodes/lambda-type.js +44 -0
  21. package/cjs/lib/ast/nodes/lambda.js +36 -0
  22. package/cjs/lib/ast/nodes/object.js +58 -0
  23. package/cjs/lib/ast/nodes/parameter.js +57 -0
  24. package/cjs/lib/ast/nodes/property.js +142 -0
  25. package/cjs/lib/ast/nodes/reference.js +79 -0
  26. package/cjs/lib/ast/nodes/string.js +87 -0
  27. package/cjs/lib/ast/nodes/types.js +2 -0
  28. package/cjs/lib/ast/references/index.js +12 -0
  29. package/cjs/lib/ast/references/jackson.js +12 -0
  30. package/cjs/lib/ast/references/jakarta.js +10 -0
  31. package/cjs/lib/ast/references/java.js +14 -0
  32. package/cjs/lib/ast/references/kotlin.js +27 -0
  33. package/cjs/lib/ast/references/okhttp3.js +7 -0
  34. package/cjs/lib/ast/references/reactor.js +6 -0
  35. package/cjs/lib/ast/references/spring.js +21 -0
  36. package/cjs/lib/ast/references/swagger.js +11 -0
  37. package/cjs/lib/ast/utils/get-kotlin-builder-options.js +19 -0
  38. package/cjs/lib/ast/utils/to-kt-node.js +22 -0
  39. package/cjs/lib/ast/utils/write-kt-annotations.js +13 -0
  40. package/cjs/lib/ast/utils/write-kt-arguments.js +33 -0
  41. package/cjs/lib/ast/utils/write-kt-enum-values.js +17 -0
  42. package/cjs/lib/ast/utils/write-kt-generic-parameters.js +12 -0
  43. package/cjs/lib/ast/utils/write-kt-members.js +16 -0
  44. package/cjs/lib/ast/utils/write-kt-node.js +24 -0
  45. package/cjs/lib/ast/utils/write-kt-parameters.js +13 -0
  46. package/cjs/lib/config.js +15 -1
  47. package/cjs/lib/file-builder.js +17 -2
  48. package/cjs/lib/generators/models/args.js +2 -0
  49. package/cjs/lib/generators/models/index.js +2 -0
  50. package/cjs/lib/generators/models/model-generator.js +281 -322
  51. package/cjs/lib/generators/services/okhttp3-clients/args.js +2 -0
  52. package/cjs/lib/generators/services/okhttp3-clients/index.js +2 -0
  53. package/cjs/lib/generators/services/okhttp3-clients/okhttp3-client-generator.js +240 -348
  54. package/cjs/lib/generators/services/okhttp3-clients/okhttp3-clients-generator.js +4 -1
  55. package/cjs/lib/generators/services/okhttp3-clients/refs.js +34 -0
  56. package/cjs/lib/generators/services/spring-controllers/args.js +2 -0
  57. package/cjs/lib/generators/services/spring-controllers/index.js +2 -0
  58. package/cjs/lib/generators/services/spring-controllers/spring-controller-generator.js +270 -346
  59. package/cjs/lib/import-collection.js +24 -15
  60. package/esm/index.js +3 -0
  61. package/esm/lib/ast/_index.js +27 -0
  62. package/esm/lib/ast/common.js +1 -0
  63. package/esm/lib/ast/index.js +2 -0
  64. package/esm/lib/ast/node.js +6 -0
  65. package/esm/lib/ast/nodes/annotation.js +35 -0
  66. package/esm/lib/ast/nodes/argument.js +28 -0
  67. package/esm/lib/ast/nodes/call.js +33 -0
  68. package/esm/lib/ast/nodes/class.js +90 -0
  69. package/esm/lib/ast/nodes/collection-literal.js +20 -0
  70. package/esm/lib/ast/nodes/constructor.js +71 -0
  71. package/esm/lib/ast/nodes/doc-tag.js +56 -0
  72. package/esm/lib/ast/nodes/doc.js +51 -0
  73. package/esm/lib/ast/nodes/enum-value.js +46 -0
  74. package/esm/lib/ast/nodes/enum.js +79 -0
  75. package/esm/lib/ast/nodes/function.js +101 -0
  76. package/esm/lib/ast/nodes/generic-parameter.js +25 -0
  77. package/esm/lib/ast/nodes/init-block.js +15 -0
  78. package/esm/lib/ast/nodes/interface.js +64 -0
  79. package/esm/lib/ast/nodes/lambda-type.js +40 -0
  80. package/esm/lib/ast/nodes/lambda.js +32 -0
  81. package/esm/lib/ast/nodes/object.js +54 -0
  82. package/esm/lib/ast/nodes/parameter.js +53 -0
  83. package/esm/lib/ast/nodes/property.js +135 -0
  84. package/esm/lib/ast/nodes/reference.js +75 -0
  85. package/esm/lib/ast/nodes/string.js +83 -0
  86. package/esm/lib/ast/nodes/types.js +1 -0
  87. package/esm/lib/ast/references/index.js +15 -0
  88. package/esm/lib/ast/references/jackson.js +9 -0
  89. package/esm/lib/ast/references/jakarta.js +7 -0
  90. package/esm/lib/ast/references/java.js +11 -0
  91. package/esm/lib/ast/references/kotlin.js +24 -0
  92. package/esm/lib/ast/references/okhttp3.js +4 -0
  93. package/esm/lib/ast/references/reactor.js +3 -0
  94. package/esm/lib/ast/references/spring.js +18 -0
  95. package/esm/lib/ast/references/swagger.js +8 -0
  96. package/esm/lib/ast/utils/get-kotlin-builder-options.js +15 -0
  97. package/esm/lib/ast/utils/to-kt-node.js +18 -0
  98. package/esm/lib/ast/utils/write-kt-annotations.js +9 -0
  99. package/esm/lib/ast/utils/write-kt-arguments.js +29 -0
  100. package/esm/lib/ast/utils/write-kt-enum-values.js +13 -0
  101. package/esm/lib/ast/utils/write-kt-generic-parameters.js +8 -0
  102. package/esm/lib/ast/utils/write-kt-members.js +12 -0
  103. package/esm/lib/ast/utils/write-kt-node.js +19 -0
  104. package/esm/lib/ast/utils/write-kt-parameters.js +9 -0
  105. package/esm/lib/config.js +15 -1
  106. package/esm/lib/file-builder.js +16 -2
  107. package/esm/lib/generators/models/args.js +1 -0
  108. package/esm/lib/generators/models/index.js +2 -0
  109. package/esm/lib/generators/models/model-generator.js +282 -323
  110. package/esm/lib/generators/services/okhttp3-clients/args.js +1 -0
  111. package/esm/lib/generators/services/okhttp3-clients/index.js +2 -0
  112. package/esm/lib/generators/services/okhttp3-clients/okhttp3-client-generator.js +242 -350
  113. package/esm/lib/generators/services/okhttp3-clients/okhttp3-clients-generator.js +4 -1
  114. package/esm/lib/generators/services/okhttp3-clients/refs.js +30 -0
  115. package/esm/lib/generators/services/spring-controllers/args.js +1 -0
  116. package/esm/lib/generators/services/spring-controllers/index.js +2 -0
  117. package/esm/lib/generators/services/spring-controllers/spring-controller-generator.js +269 -346
  118. package/esm/lib/import-collection.js +23 -14
  119. package/package.json +6 -6
  120. package/types/index.d.ts +2 -0
  121. package/types/lib/ast/_index.d.ts +28 -0
  122. package/types/lib/ast/common.d.ts +1 -0
  123. package/types/lib/ast/index.d.ts +1 -0
  124. package/types/lib/ast/node.d.ts +4 -0
  125. package/types/lib/ast/nodes/annotation.d.ts +23 -0
  126. package/types/lib/ast/nodes/argument.d.ts +22 -0
  127. package/types/lib/ast/nodes/call.d.ts +22 -0
  128. package/types/lib/ast/nodes/class.d.ts +54 -0
  129. package/types/lib/ast/nodes/collection-literal.d.ts +17 -0
  130. package/types/lib/ast/nodes/constructor.d.ts +34 -0
  131. package/types/lib/ast/nodes/doc-tag.d.ts +34 -0
  132. package/types/lib/ast/nodes/doc.d.ts +26 -0
  133. package/types/lib/ast/nodes/enum-value.d.ts +30 -0
  134. package/types/lib/ast/nodes/enum.d.ts +45 -0
  135. package/types/lib/ast/nodes/function.d.ts +58 -0
  136. package/types/lib/ast/nodes/generic-parameter.d.ts +21 -0
  137. package/types/lib/ast/nodes/init-block.d.ts +16 -0
  138. package/types/lib/ast/nodes/interface.d.ts +41 -0
  139. package/types/lib/ast/nodes/lambda-type.d.ts +21 -0
  140. package/types/lib/ast/nodes/lambda.d.ts +20 -0
  141. package/types/lib/ast/nodes/object.d.ts +34 -0
  142. package/types/lib/ast/nodes/parameter.d.ts +48 -0
  143. package/types/lib/ast/nodes/property.d.ts +87 -0
  144. package/types/lib/ast/nodes/reference.d.ts +63 -0
  145. package/types/lib/ast/nodes/string.d.ts +30 -0
  146. package/types/lib/ast/nodes/types.d.ts +10 -0
  147. package/types/lib/ast/references/index.d.ts +8 -0
  148. package/types/lib/ast/references/jackson.d.ts +77 -0
  149. package/types/lib/ast/references/jakarta.d.ts +33 -0
  150. package/types/lib/ast/references/java.d.ts +71 -0
  151. package/types/lib/ast/references/kotlin.d.ts +265 -0
  152. package/types/lib/ast/references/okhttp3.d.ts +22 -0
  153. package/types/lib/ast/references/reactor.d.ts +16 -0
  154. package/types/lib/ast/references/spring.d.ts +126 -0
  155. package/types/lib/ast/references/swagger.d.ts +44 -0
  156. package/types/lib/ast/utils/get-kotlin-builder-options.d.ts +3 -0
  157. package/types/lib/ast/utils/to-kt-node.d.ts +7 -0
  158. package/types/lib/ast/utils/write-kt-annotations.d.ts +5 -0
  159. package/types/lib/ast/utils/write-kt-arguments.d.ts +3 -0
  160. package/types/lib/ast/utils/write-kt-enum-values.d.ts +3 -0
  161. package/types/lib/ast/utils/write-kt-generic-parameters.d.ts +3 -0
  162. package/types/lib/ast/utils/write-kt-members.d.ts +5 -0
  163. package/types/lib/ast/utils/write-kt-node.d.ts +7 -0
  164. package/types/lib/ast/utils/write-kt-parameters.d.ts +3 -0
  165. package/types/lib/config.d.ts +4 -0
  166. package/types/lib/file-builder.d.ts +10 -3
  167. package/types/lib/generators/models/args.d.ts +99 -0
  168. package/types/lib/generators/models/index.d.ts +1 -0
  169. package/types/lib/generators/models/model-generator.d.ts +35 -32
  170. package/types/lib/generators/models/models.d.ts +4 -4
  171. package/types/lib/generators/services/okhttp3-clients/args.d.ts +66 -0
  172. package/types/lib/generators/services/okhttp3-clients/index.d.ts +1 -0
  173. package/types/lib/generators/services/okhttp3-clients/models.d.ts +2 -0
  174. package/types/lib/generators/services/okhttp3-clients/okhttp3-client-generator.d.ts +25 -47
  175. package/types/lib/generators/services/okhttp3-clients/refs.d.ts +235 -0
  176. package/types/lib/generators/services/spring-controllers/args.d.ts +70 -0
  177. package/types/lib/generators/services/spring-controllers/index.d.ts +1 -0
  178. package/types/lib/generators/services/spring-controllers/spring-controller-generator.d.ts +37 -51
  179. package/types/lib/import-collection.d.ts +7 -1
@@ -0,0 +1,70 @@
1
+ import { ApiEndpoint, ApiParameter, ApiSchema, SourceBuilder } from '@goast/core';
2
+ import { kt } from '../../../ast';
3
+ export type GenerateApiInterfaceFile = {
4
+ dirPath: string;
5
+ packageName: string;
6
+ };
7
+ export type GetApiinterfaceFileContent = {
8
+ interfaceName: string;
9
+ };
10
+ export type GetApiInterface = {
11
+ interfaceName: string;
12
+ };
13
+ export type GetApiInterfaceEndpointMethod = {
14
+ endpoint: ApiEndpoint;
15
+ };
16
+ export type GenerateApiControllerFile = {
17
+ dirPath: string;
18
+ packageName: string;
19
+ };
20
+ export type GetApiControllerFileContent = {
21
+ controllerName: string;
22
+ };
23
+ export type GetApiController = {
24
+ controllerName: string;
25
+ };
26
+ export type GenerateApiDelegateInterfaceFile = {
27
+ dirPath: string;
28
+ packageName: string;
29
+ };
30
+ export type GetApiDelegateInterfaceFileContent = {
31
+ delegateInterfaceName: string;
32
+ };
33
+ export type GetApiDelegateInterface = {
34
+ delegateInterfaceName: string;
35
+ };
36
+ export type GetApiDelegateInterfaceEndpointMethod = {
37
+ endpoint: ApiEndpoint;
38
+ };
39
+ export type GetParameterType = {
40
+ endpoint: ApiEndpoint;
41
+ parameter: ApiParameter;
42
+ };
43
+ export type GetResponseType = {
44
+ endpoint: ApiEndpoint;
45
+ };
46
+ export type GetTypeUsage<TBuilder extends SourceBuilder> = {
47
+ schema: ApiSchema | undefined;
48
+ nullable?: boolean;
49
+ fallback?: kt.Type<TBuilder>;
50
+ };
51
+ export type GetSchemaType = {
52
+ schema: ApiSchema | undefined;
53
+ };
54
+ export type GetControllerRequestMapping = {
55
+ prefix?: string;
56
+ };
57
+ export type GetBasePath = {};
58
+ export type GetEndpointPath = {
59
+ endpoint: ApiEndpoint;
60
+ };
61
+ export type GetDirectoryPath = {
62
+ packageName: string;
63
+ };
64
+ export type GetPackageName = {};
65
+ export type GetApiInterfaceName = {};
66
+ export type GetApiDelegateInterfaceName = {};
67
+ export type GetApiControllerName = {};
68
+ export type GetAllParameters = {
69
+ endpoint: ApiEndpoint;
70
+ };
@@ -1,3 +1,4 @@
1
1
  export * from './models';
2
2
  export * from './spring-controller-generator';
3
3
  export * from './spring-controllers-generator';
4
+ export * as DefaultKotlinSpringControllerGeneratorArgs from './args';
@@ -1,9 +1,10 @@
1
- import { ApiEndpoint, ApiParameter, ApiSchema } from '@goast/core';
1
+ import { ApiParameter, AppendValueGroup, SourceBuilder } from '@goast/core';
2
+ import { DefaultKotlinSpringControllerGeneratorArgs as Args } from '.';
2
3
  import { KotlinServiceGeneratorContext, KotlinServiceGeneratorOutput } from './models';
4
+ import { kt } from '../../../ast';
3
5
  import { KotlinImport } from '../../../common-results';
4
6
  import { KotlinFileBuilder } from '../../../file-builder';
5
7
  import { KotlinFileGenerator } from '../../file-generator';
6
- import { KotlinModelGeneratorOutput } from '../../models';
7
8
  type Context = KotlinServiceGeneratorContext;
8
9
  type Output = KotlinServiceGeneratorOutput;
9
10
  type Builder = KotlinFileBuilder;
@@ -12,54 +13,39 @@ export interface KotlinSpringControllerGenerator<TOutput extends Output = Output
12
13
  }
13
14
  export declare class DefaultKotlinSpringControllerGenerator extends KotlinFileGenerator<Context, Output> implements KotlinSpringControllerGenerator {
14
15
  generate(ctx: KotlinServiceGeneratorContext): KotlinServiceGeneratorOutput;
15
- protected generateApiInterfaceFile(ctx: Context, dirPath: string, packageName: string): KotlinImport;
16
- protected generateApiInterfaceFileContent(ctx: Context, builder: Builder): void;
17
- protected generateApiInterfaceAnnotations(ctx: Context, builder: Builder): void;
18
- protected generateApiInterfaceSignature(ctx: Context, builder: Builder): void;
19
- protected generateApiInterfaceContent(ctx: Context, builder: Builder): void;
20
- protected generateApiInterfaceDelegateAccessor(ctx: Context, builder: Builder): void;
21
- protected generateApiInterfaceMethods(ctx: Context, builder: Builder): void;
22
- protected generateApiInterfaceMethod(ctx: Context, builder: Builder, endpoint: ApiEndpoint): void;
23
- protected generateApiInterfaceMethodAnnnotations(ctx: Context, builder: Builder, endpoint: ApiEndpoint): void;
24
- protected generateApiInterfaceMethodSignature(ctx: Context, builder: Builder, endpoint: ApiEndpoint): void;
25
- protected generateApiInterfaceMethodParameters(ctx: Context, builder: Builder, endpoint: ApiEndpoint): void;
26
- protected generateApiInterfaceMethodReturnType(ctx: Context, builder: Builder, endpoint: ApiEndpoint): void;
27
- protected generateApiInterfaceMethodParameter(ctx: Context, builder: Builder, endpoint: ApiEndpoint, parameter: ApiParameter): void;
28
- protected generateApiInterfaceMethodParameterAnnotations(ctx: Context, builder: Builder, endpoint: ApiEndpoint, parameter: ApiParameter): void;
29
- protected generateApiInterfaceMethodParameterSignature(ctx: Context, builder: Builder, endpoint: ApiEndpoint, parameter: ApiParameter): void;
30
- protected generateApiInterfaceMethodContent(ctx: Context, builder: Builder, endpoint: ApiEndpoint): void;
31
- protected generateApiControllerFile(ctx: Context, dirPath: string, packageName: string): KotlinImport;
32
- protected generateApiControllerFileContent(ctx: Context, builder: Builder): void;
33
- protected generateApiControllerAnnotations(ctx: Context, builder: Builder): void;
34
- protected generateApiControllerSignature(ctx: Context, builder: Builder): void;
35
- protected generateApiControllerParameters(ctx: Context, builder: Builder): void;
36
- protected generateApiControllerContent(ctx: Context, builder: Builder): void;
37
- protected generateApiDelegateInterfaceFile(ctx: Context, dirPath: string, packageName: string): KotlinImport;
38
- protected generateApiDelegateInterfaceFileContent(ctx: Context, builder: Builder): void;
39
- protected generateApiDelegateInterfaceAnnotations(ctx: Context, builder: Builder): void;
40
- protected generateApiDelegateInterfaceSignature(ctx: Context, builder: Builder): void;
41
- protected generateApiDelegateInterfaceContent(ctx: Context, builder: Builder): void;
42
- protected generateApiDelegateInterfaceMethod(ctx: Context, builder: Builder, endpoint: ApiEndpoint): void;
43
- protected generateApiDelegateInterfaceMethodAnnnotations(ctx: Context, builder: Builder, endpoint: ApiEndpoint): void;
44
- protected generateApiDelegateInterfaceMethodSignature(ctx: Context, builder: Builder, endpoint: ApiEndpoint): void;
45
- protected generateApiDelegateInterfaceMethodParameters(ctx: Context, builder: Builder, endpoint: ApiEndpoint): void;
46
- protected generateApiDelegateInterfaceMethodReturnType(ctx: Context, builder: Builder, endpoint: ApiEndpoint): void;
47
- protected generateApiDelegateInterfaceMethodParameter(ctx: Context, builder: Builder, endpoint: ApiEndpoint, parameter: ApiParameter): void;
48
- protected generateApiDelegateInterfaceMethodParameterAnnotations(ctx: Context, builder: Builder, endpoint: ApiEndpoint, parameter: ApiParameter): void;
49
- protected generateApiDelegateInterfaceMethodParameterSignature(ctx: Context, builder: Builder, endpoint: ApiEndpoint, parameter: ApiParameter): void;
50
- protected generateApiDelegateInterfaceMethodContent(ctx: Context, builder: Builder, endpoint: ApiEndpoint): void;
51
- protected generateResponseEntityType(ctx: Context, builder: Builder, endpoint: ApiEndpoint): void;
52
- protected generateTypeUsage(ctx: Context, builder: Builder, schema: ApiSchema | undefined, arrayAsFlux: boolean, fallback?: string): void;
53
- protected getControllerRequestMapping(ctx: Context, prefix?: string): string;
54
- protected getBasePath(ctx: Context): string;
55
- protected getEndpointPath(ctx: Context, endpoint: ApiEndpoint): string;
56
- protected getDirectoryPath(ctx: Context, packageName: string): string;
57
- protected getPackageName(ctx: Context): string;
58
- protected getApiInterfaceName(ctx: Context): string;
59
- protected getApiControllerName(ctx: Context): string;
60
- protected getApiDelegateInterfaceName(ctx: Context): string;
61
- protected getSchemaInfo(ctx: Context, schema: ApiSchema | undefined): KotlinModelGeneratorOutput;
62
- protected getAllParameters(ctx: Context, endpoint: ApiEndpoint): ApiParameter[];
63
- protected sortParameters(ctx: Context, parameters: Iterable<ApiParameter>): ApiParameter[];
16
+ protected generateApiInterfaceFile(ctx: Context, args: Args.GenerateApiInterfaceFile): KotlinImport;
17
+ protected getApiInterfaceFileContent(ctx: Context, args: Args.GetApiinterfaceFileContent): AppendValueGroup<Builder>;
18
+ protected getApiInterface(ctx: Context, args: Args.GetApiInterface): kt.Interface<Builder>;
19
+ private getApiInterfaceAnnotations;
20
+ private getApiInterfaceMembers;
21
+ protected getApiInterfaceEndpointMethod(ctx: Context, args: Args.GetApiInterfaceEndpointMethod): kt.Function<Builder>;
22
+ private getApiInterfaceEndpointMethodAnnnotations;
23
+ private getApiInterfaceEndpointMethodParameter;
24
+ private getApiInterfaceEndpointMethodBody;
25
+ protected generateApiControllerFile(ctx: Context, args: Args.GenerateApiControllerFile): KotlinImport;
26
+ protected getApiControllerFileContent(ctx: Context, args: Args.GetApiControllerFileContent): AppendValueGroup<Builder>;
27
+ protected getApiController(ctx: Context, args: Args.GetApiController): kt.Class<Builder>;
28
+ private getApiControllerAnnotations;
29
+ private getApiControllerMembers;
30
+ protected generateApiDelegateInterfaceFile(ctx: Context, args: Args.GenerateApiDelegateInterfaceFile): KotlinImport;
31
+ protected getApiDelegateInterfaceFileContent(ctx: Context, args: Args.GetApiDelegateInterfaceFileContent): AppendValueGroup<Builder>;
32
+ protected getApiDelegateInterface(ctx: Context, args: Args.GetApiDelegateInterface): kt.Interface<Builder>;
33
+ private getApiDelegateInterfaceAnnotations;
34
+ private getApiDelegateInterfaceMembers;
35
+ protected getApiDelegateInterfaceEndpointMethod(ctx: Context, args: Args.GetApiDelegateInterfaceEndpointMethod): kt.Function<Builder>;
36
+ protected getParameterType(ctx: Context, args: Args.GetParameterType): kt.Type<Builder>;
37
+ protected getResponseType(ctx: Context, args: Args.GetResponseType): kt.Type<Builder>;
38
+ protected getTypeUsage(ctx: Context, args: Args.GetTypeUsage<Builder>): kt.Type<Builder>;
39
+ protected getSchemaType(ctx: Context, args: Args.GetSchemaType): kt.Reference<SourceBuilder> | undefined;
40
+ protected getControllerRequestMapping(ctx: Context, args: Args.GetControllerRequestMapping): kt.String<Builder>;
41
+ protected getBasePath(ctx: Context, args: Args.GetBasePath): string;
42
+ protected getEndpointPath(ctx: Context, args: Args.GetEndpointPath): string;
43
+ protected getDirectoryPath(ctx: Context, args: Args.GetDirectoryPath): string;
44
+ protected getPackageName(ctx: Context, args: Args.GetPackageName): string;
45
+ protected getApiInterfaceName(ctx: Context, args: Args.GetApiInterfaceName): string;
46
+ protected getApiControllerName(ctx: Context, args: Args.GetApiControllerName): string;
47
+ protected getApiDelegateInterfaceName(ctx: Context, args: Args.GetApiDelegateInterfaceName): string;
48
+ protected getAllParameters(ctx: Context, args: Args.GetAllParameters): ApiParameter[];
64
49
  }
50
+ export declare function listToFlux<T>(type: T): T;
65
51
  export {};
@@ -1,13 +1,19 @@
1
1
  import { SourceBuilderOptions, StringBuilder } from '@goast/core';
2
2
  import { KotlinImport } from './common-results';
3
+ export type ImportCollectionOptions = {
4
+ globalImports: string[];
5
+ };
6
+ export declare const defaultImportCollectionOptions: ImportCollectionOptions;
3
7
  export declare class ImportCollection {
4
8
  private readonly _imports;
9
+ private readonly _options;
10
+ constructor(options?: Partial<ImportCollectionOptions>);
5
11
  get hasImports(): boolean;
6
12
  get imports(): KotlinImport[];
7
13
  addImport(importName: string, fromModule: string): void;
8
14
  addImport(importObj: KotlinImport): void;
9
15
  addImports(imports: KotlinImport[]): void;
10
16
  clear(): void;
11
- toString(options: Partial<SourceBuilderOptions>): string;
17
+ toString(options?: Partial<SourceBuilderOptions>): string;
12
18
  writeTo(builder: StringBuilder): void;
13
19
  }