Suggestion: export kinds as named types #447
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Gm,
I would like to suggest exporting kinds as named types.
This will allow use content from kinds as a typescript type and not only as a value.
Without this dev will need to use typeof kinds.[kind] to represent the type.
![image](https://private-user-images.githubusercontent.com/91137293/379261788-2d9a50ba-4fa2-49f8-97e2-cdd631f25cfd.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3Mzg4MjM1MjksIm5iZiI6MTczODgyMzIyOSwicGF0aCI6Ii85MTEzNzI5My8zNzkyNjE3ODgtMmQ5YTUwYmEtNGZhMi00OWY4LTk3ZTItY2RkNjMxZjI1Y2ZkLnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNTAyMDYlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjUwMjA2VDA2MjcwOVomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPWYwYTFhYzYwZDYzNjY5YjlmZTNmMjFiMDBiZmViNTI3NzcxMDg4M2Q5YjE0Yzg3MWNlNjVmMGFhYmM0OTZhYjEmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0In0.B_lwzOglrYzsnuUqr2yo-xFE2tnkHd6QJgxZuXkkW2E)
This suggestion includes isKind guard.
This will help dev validate event type and also cast it into a kind checked event.
This will encourage dev require in method signature already validated events from the expected kind.
This guard makes import from './pure.ts', not sure if this is a problem.