ACE Typescript Type Declarations

Hello everyone,

We have published a beta version of atlassian-connect-express package with typescript type declarations. You can try it out by updating your atlassian-connect-express dependency version to 6.2.3-1. The types can be found in types/index.d.ts of the source and although not entirely complete, they cover most ACE features.

We hope you find these useful. Interested to hear any thoughts, comments or feedback!

7 Likes

Hi everyone,

Just an update that these typescript declarations for the atlassian-connect-express package have been released as a non beta version 6.3.0.

Again, interested to hear any feedback!

2 Likes

Thank you for the effort of supporting typescript. We are in the process to adapt the official TS implementation.

To implement a typescript rest API library We found it useful to distinguish between different HostClient contexts.

In our case the HostClient methods

asUser(userKey: string): HostClient;
asUserByAccountId: (userAccountId: string|number) => HostClient;

would return an instance with non optional userKey allowing for type guards. This in turn allows us to spot API calls to endpoints not supported for Apps.

httpClient(reqOrOpts: { clientKey: string, userAccountId: string })

userAccountId should be optional?

httpClient(reqOrOpts: { clientKey: string, userAccountId?: string }): HostClient;
1 Like

Hi,

the current types currently do not allow for a descriptorTransformer adding or manipulation all properties defined in the respective JSON schemas, like e.g. modules, right? Do you plan to maybe generate the descriptor types from their JSON schema and include that for types?