types(MessageButtonOptions): Clean up and export some button option type definitions (#6291)

This commit is contained in:
Suneet Tipirneni
2021-08-04 16:48:46 -04:00
committed by GitHub
parent 6e3236ab64
commit ae6200e58e

22
typings/index.d.ts vendored
View File

@@ -3908,17 +3908,17 @@ export interface BaseButtonOptions extends BaseMessageComponentOptions {
label?: string;
}
export type MessageButtonOptions = BaseButtonOptions &
(
| {
style: Exclude<MessageButtonStyleResolvable, 'LINK' | MessageButtonStyles.LINK>;
customId: string;
}
| {
style: 'LINK' | MessageButtonStyles.LINK;
url: string;
}
);
export interface LinkButtonOptions extends BaseButtonOptions {
style: 'LINK' | MessageButtonStyles.LINK;
url: string;
}
export interface InteractionButtonOptions extends BaseButtonOptions {
style: Exclude<MessageButtonStyleResolvable, 'LINK' | MessageButtonStyles.LINK>;
customId: string;
}
export type MessageButtonOptions = InteractionButtonOptions | LinkButtonOptions;
export type MessageButtonStyle = keyof typeof MessageButtonStyles;