growi-interaction-processor.ts 554 B

123456789101112131415161718
  1. import type { AuthorizeResult } from '@slack/oauth';
  2. import { InteractionPayloadAccessor } from '../utils/interaction-payload-accessor';
  3. export interface InteractionHandledResult<V> {
  4. result?: V;
  5. isTerminated: boolean;
  6. }
  7. export interface GrowiInteractionProcessor<V> {
  8. shouldHandleInteraction(interactionPayloadAccessor: InteractionPayloadAccessor): boolean;
  9. processInteraction(
  10. authorizeResult: AuthorizeResult, interactionPayload: any, interactionPayloadAccessor: InteractionPayloadAccessor): Promise<InteractionHandledResult<V>>;
  11. }