Marcos Susaña 08b8df41fa
fix(types): Literal Types (#77)
* fix(Message): delete() params

* feat: fetches guilds items

* fix(types): literal types

* fix
2022-07-21 07:49:52 +00:00

34 lines
1.0 KiB
TypeScript

import type { Session } from '../../Session.ts';
import type { DiscordComponent } from '../../../discordeno/mod.ts';
import type { ButtonComponent, ClassicButton } from './Component.ts';
import { MessageComponentTypes } from '../../../discordeno/mod.ts';
import BaseComponent from './Component.ts';
import Emoji from '../Emoji.ts';
export class Button extends BaseComponent implements ButtonComponent {
constructor(session: Session, data: DiscordComponent) {
super(data.type);
this.session = session;
this.type = data.type as MessageComponentTypes.Button;
this.customId = data.custom_id;
this.label = data.label;
this.style = data.style as ClassicButton;
this.disabled = data.disabled;
if (data.emoji) {
this.emoji = new Emoji(session, data.emoji);
}
}
readonly session: Session;
override type: MessageComponentTypes.Button;
customId?: string;
label?: string;
style: ClassicButton;
disabled?: boolean;
emoji?: Emoji;
}
export default Button;