node-groupme
Version:
The only GroupMe API library that isn't a million years old.
36 lines • 1.24 kB
TypeScript
import type { APIPoll } from 'groupme-api-types';
import type { Client, Group, User } from '..';
import { Base, Collection, PollOption } from '..';
interface PollInterface {
fetch(): Promise<this>;
vote(option: OptionID | PollOption): Promise<this>;
vote(options: (OptionID | PollOption)[]): Promise<this>;
end(): Promise<this>;
get canEnd(): boolean;
}
declare type UserID = string;
declare type OptionID = string;
export default class Poll extends Base implements PollInterface {
private _active;
question: string;
options: Collection<OptionID, PollOption>;
voters?: Collection<UserID, OptionID> | Collection<UserID, OptionID[]>;
myVote?: OptionID | OptionID[];
group: Group;
creator: User;
multi: boolean;
public: boolean;
createdAt: number;
updatedAt: number;
expiresAt: number;
constructor(client: Client, group: Group, creator: User, data: APIPoll);
_patch(data: Partial<APIPoll>): this;
vote(option: string | PollOption): Promise<this>;
vote(options: (string | PollOption)[]): Promise<this>;
fetch(): Promise<this>;
end(): Promise<this>;
get canEnd(): boolean;
get active(): boolean;
}
export {};
//# sourceMappingURL=Poll.d.ts.map