{{#if shouldImportCoreEvents}}import { coreEventContracts } from '@sprucelabs/mercury-core-events'{{/if}}

{{#each contracts}}
import {{namespaceCamel}}{{namePascal}}EventContract_{{version}}, { {{namePascal}}EventContract as {{namespacePascal}}{{namePascal}}EventContract_{{version}}  } from '#spruce/events/{{ namespaceCamel }}/{{ nameCamel }}.{{ version }}.contract'
{{/each}}

export default [
    {{#each contracts}}
    {{namespaceCamel}}{{namePascal}}EventContract_{{version}},
    {{/each}}
    {{#if shouldImportCoreEvents}}...coreEventContracts,{{/if}}
]

declare module '{{skillEventContractTypesFile}}' {
    interface SkillEventSignatures {
    {{#each contracts}}
    
    {{#each eventSignatures}}
    '{{@key}}': {{../namespacePascal}}{{../namePascal}}EventContract_{{../version}}['eventSignatures']['{{@key}}'],
    {{/each}}
    
    {{/each}}
    }
}