CtrlK
BlogDocsLog inGet started
Tessl Logo

tessl/npm-slack--types

Comprehensive TypeScript type definitions for building Slack applications and integrations with the Node Slack SDK

94

1.11x
Overview
Eval results
Files

rubric.jsonevals/scenario-4/

{
  "context": "This evaluation assesses how effectively an engineer uses the @slack/types package to handle Slack pin events. The criteria focus on proper usage of pin event type definitions, event payload structures, and type-safe event processing.",
  "type": "weighted_checklist",
  "checklist": [
    {
      "name": "Pin event types",
      "description": "Uses the correct @slack/types event type definitions for pin_added and pin_removed events (e.g., PinAddedEvent, PinRemovedEvent or GenericMessageEvent with appropriate type guards)",
      "max_score": 30
    },
    {
      "name": "Event payload typing",
      "description": "Correctly types the event parameter using @slack/types definitions instead of 'any', ensuring type-safe access to event properties like type, item, channel, user, and event_ts",
      "max_score": 25
    },
    {
      "name": "Item type handling",
      "description": "Uses @slack/types item type definitions (e.g., checking item.type === 'message') and accesses item properties (message.ts, message.channel) in a type-safe manner",
      "max_score": 20
    },
    {
      "name": "Type guards",
      "description": "Implements or uses type guards to discriminate between pin_added and pin_removed events, leveraging TypeScript's discriminated union types from @slack/types",
      "max_score": 15
    },
    {
      "name": "Event structure access",
      "description": "Correctly accesses nested event properties (user, channel, item.message) using the structure defined in @slack/types event definitions",
      "max_score": 10
    }
  ]
}

Install with Tessl CLI

npx tessl i tessl/npm-slack--types

tile.json