@slack/web-api
Version:
Official library for using the Slack Platform's Web API
48 lines • 2.1 kB
TypeScript
import type { View } from '@slack/types';
import type { TokenOverridable } from './common';
export interface BaseViewsArguments {
/** @description A {@link https://docs.slack.dev/surfaces/modals view payload}. */
view: View;
}
export interface ViewTriggerId {
/**
* @description An access token originating from a user interaction in the Slack client.
* One of `trigger_id` or `interactivity_pointer` is required to interact with views.
*/
trigger_id: string;
}
export interface ViewInteractivityPointer {
/**
* @description An access token originating from a user interaction in the Slack client.
* One of `trigger_id` or `interactivity_pointer` is required to interact with views.
*/
interactivity_pointer: string;
}
export type ViewsOpenArguments = BaseViewsArguments & TokenOverridable & (ViewTriggerId | ViewInteractivityPointer);
export type ViewsPushArguments = BaseViewsArguments & TokenOverridable & (ViewTriggerId | ViewInteractivityPointer);
export interface ViewHash {
/**
* @description A string that represents view state to protect against possible race conditions.
* @see {@link https://docs.slack.dev/surfaces/modals#handling_race_conditions Avoiding race conditions when using views}.
*/
hash?: string;
}
export interface ViewsPublishArguments extends BaseViewsArguments, TokenOverridable, ViewHash {
/** @description ID of the user you want publish a view to. */
user_id: string;
}
export interface ViewExternalId {
/**
* @description A unique identifier of the view set by the developer. Must be unique for all views on a team.
* Max length of 255 characters. Either `view_id` or `external_id` is required.
*/
external_id: string;
}
export interface ViewViewId {
/**
* @description A unique identifier of the view to be updated. Either `view_id` or `external_id` is required.
*/
view_id: string;
}
export type ViewsUpdateArguments = BaseViewsArguments & TokenOverridable & (ViewExternalId | ViewViewId) & ViewHash;
//# sourceMappingURL=views.d.ts.map