-
Notifications
You must be signed in to change notification settings - Fork 5.3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Better separate type declarations #5695
base: master
Are you sure you want to change the base?
Conversation
One of the public type files has been updated, plase make sure there are no backwards incompatible changes done in the PR. |
One of the public type files has been updated, plase make sure there are no backwards incompatible changes done in the PR. |
One of the public type files has been updated, plase make sure there are no backwards incompatible changes done in the PR. |
# Conflicts: # ace-internal.d.ts # ace.d.ts # src/autocomplete.js # tool/ace_declaration_generator.js # tsconfig.json # types/ace-ext.d.ts # types/ace-lib.d.ts # types/ace-modules.d.ts
One of the public type files has been updated, plase make sure there are no backwards incompatible changes done in the PR. |
One of the public type files has been updated, plase make sure there are no backwards incompatible changes done in the PR. |
# Conflicts: # src/edit_session.js # types/ace-modules.d.ts
One of the public type files has been updated, plase make sure there are no backwards incompatible changes done in the PR. |
Issue #, if available:
Description of changes:
This update builds on the work from #5427 to refine the TypeScript declaration generation, now producing separate, module-specific declaration files.
Benefits:
Result:
These changes yield a cleaner, more maintainable public API surface.
Before:
After:
Discussion Point: Allowing Index Signatures for Classes
We could consider adding an index signature to the class to allow dynamic properties. This can be helpful when properties are not known at compile time but need to be added later.
While this provides flexibility, it comes at the cost of reduced type safety, as any property can be added without restrictions.
Still could be a good tradeoff for situations like #5696 (comment)
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.
Pull Request Checklist:
ace.d.ts
) and its references: