Comprehensive TypeScript type definitions for building Slack applications and integrations with the Node Slack SDK
94
{
"context": "This evaluation criteria assesses how well the engineer uses @slack/types package to construct a properly typed modal view with various input blocks. The focus is on correct usage of modal view types, input block types, and element types from the package.",
"type": "weighted_checklist",
"checklist": [
{
"name": "Modal View Type",
"description": "Uses the correct modal view type from @slack/types (e.g., ModalView interface) with required properties including type='modal', title, submit, close, and blocks array",
"max_score": 20
},
{
"name": "Text Object Types",
"description": "Uses proper text object types from @slack/types (e.g., PlainTextElement) for title, submit button, close button, and input labels",
"max_score": 15
},
{
"name": "Input Block Type",
"description": "Uses the Input block type from @slack/types correctly for all 5 input fields with proper type='input', label, and element properties",
"max_score": 15
},
{
"name": "Plain Text Input",
"description": "Uses PlainTextInput element type from @slack/types for the project name field with correct properties including type='plain_text_input', multiline=false or undefined, and placeholder",
"max_score": 10
},
{
"name": "Multi-line Text Input",
"description": "Uses PlainTextInput element type from @slack/types for the project description field with multiline=true property set",
"max_score": 10
},
{
"name": "Static Select Menu",
"description": "Uses StaticSelect element type from @slack/types for the priority field with correct properties including type='static_select', options array, and proper Option objects",
"max_score": 10
},
{
"name": "Option Objects",
"description": "Uses proper Option object types from @slack/types for the priority select menu options with text and value properties",
"max_score": 10
},
{
"name": "Multi-select Users",
"description": "Uses MultiUsersSelect element type from @slack/types for the team members field with correct type='multi_users_select' property",
"max_score": 5
},
{
"name": "Date Picker Element",
"description": "Uses Datepicker element type from @slack/types for the due date field with correct type='datepicker' property",
"max_score": 5
}
]
}Install with Tessl CLI
npx tessl i tessl/npm-slack--typesdocs
evals
scenario-1
scenario-2
scenario-3
scenario-4
scenario-5
scenario-6
scenario-7
scenario-8
scenario-9
scenario-10