Comprehensive TypeScript type definitions for building Slack applications and integrations with the Node Slack SDK
94
{
"context": "This criteria evaluates how well the engineer uses the @slack/types package to implement a multi-select checkbox interface for task assignment. The focus is on proper usage of checkbox element types, option structures, and interactive element mixins provided by the package.",
"type": "weighted_checklist",
"checklist": [
{
"name": "Checkboxes Type Usage",
"description": "Uses the Checkboxes type from @slack/types (or constructs an object with type: 'checkboxes') to create the interactive element structure.",
"max_score": 25
},
{
"name": "Option Structure",
"description": "Uses the Option type from @slack/types to properly structure team member options with text objects (PlainTextOption or similar) containing label and value fields, and optionally description fields.",
"max_score": 20
},
{
"name": "Initial Options",
"description": "Correctly implements the initial_options property of the Checkboxes interface to handle pre-selected team members using Option types.",
"max_score": 15
},
{
"name": "Action ID",
"description": "Properly uses the action_id property (from the Actionable mixin) to assign a unique identifier for tracking checkbox interactions.",
"max_score": 10
},
{
"name": "Confirmation Dialog",
"description": "Uses the Confirm type from @slack/types to implement the confirm property (from the Confirmable mixin) with proper structure including title, text, confirm, and deny fields as text objects.",
"max_score": 15
},
{
"name": "Focus Behavior",
"description": "Correctly implements the focus_on_load property (from the Focusable mixin) to control whether the checkbox element receives focus when loaded.",
"max_score": 10
},
{
"name": "Return Type",
"description": "Returns a properly typed value (ideally typed as Checkboxes from @slack/types) rather than using 'any' or untyped objects throughout the implementation.",
"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