@@ -620,21 +620,23 @@ export function fromExtensionManifest<T extends TypeDescriptor & Partial<Section
620620 */
621621export const toolkitPrompts = settingsProps [ 'aws.suppressPrompts' ]
622622export const ToolkitPromptSettings = getPromptSettings ( 'aws.suppressPrompts' )
623+ export type ToolkitPromptSettings = InstanceType < typeof ToolkitPromptSettings >
623624
624625export const amazonQPrompts = settingsProps [ 'amazonQ.suppressPrompts' ]
625626export const AmazonQPromptSettings = getPromptSettings ( 'amazonQ.suppressPrompts' )
627+ export type AmazonQPromptSettings = InstanceType < typeof ToolkitPromptSettings >
626628type promptSettingsKey = 'amazonQ.suppressPrompts' | 'aws.suppressPrompts'
627629
628- function getPromptSettings ( promptsKey : promptSettingsKey ) {
630+ function getPromptSettings < P extends promptSettingsKey > ( promptsKey : P ) {
629631 const prompts = settingsProps [ promptsKey ]
630- type promptName = keyof typeof prompts
632+ type promptName = keyof typeof prompts & string
631633 return class AnonymousPromptSettings extends Settings . define (
632634 promptsKey ,
633635 toRecord ( keys ( prompts ) , ( ) => Boolean )
634636 ) {
635- public isPromptEnabled ( promptName : promptName & string ) {
637+ public isPromptEnabled ( promptName : promptName ) {
636638 try {
637- return ! this . _getOrThrow ( promptName , false )
639+ return ! this . _getOrThrow ( promptName , false as never )
638640 } catch ( e ) {
639641 this . _log ( 'prompt check for "%s" failed: %s' , promptName , ( e as Error ) . message )
640642 this . reset ( ) . catch ( ( e ) =>
@@ -645,9 +647,9 @@ function getPromptSettings(promptsKey: promptSettingsKey) {
645647 }
646648 }
647649
648- public async disablePrompt ( promptName : promptName & string ) {
650+ public async disablePrompt ( promptName : promptName ) {
649651 if ( this . isPromptEnabled ( promptName ) ) {
650- await this . update ( promptName , true )
652+ await this . update ( promptName , true as never )
651653 }
652654 }
653655
0 commit comments