import { Channel, Emoji, Guild, GuildMember, Message, Snowflake, User } from 'discord.js'; import { TextChannelLike } from '../../types'; import { Command } from '../commands'; import { Event } from '../Event'; import { Argument, ArgumentBuilder } from './Argument'; /** * Creates a boolean argument. * The value can only be `true` or `false`. * * @param options - The options of the argument. * @returns - A boolean Argument. */ export declare function booleanArgument(options?: ArgumentBuilder): Argument; /** * Creates a channel argument. * The value can be a mention, an ID, or a part of a channel from the entire client. * * @param options - The options of the argument. * @returns - A channel Argument. */ export declare function channelArgument(options?: ArgumentBuilder): Argument; /** * Creates a choice argument. * You must put the values possible as a string array. * The value can be anything contained in the array. * * @param options - The options of the argument. * @returns - A choice argument. */ export declare function choiceArgument(options: ArgumentBuilder & { values: string[]; }): Argument; /** * Creates a command argument. * The value can be an alias or the name of a command. * * @param options - The options of the argument. * @returns - A command argument. */ export declare function commandArgument(options?: ArgumentBuilder): Argument; /** * Creates a emoji argument. * The value can be a native emoji or a custom emoji. * * @param options - The options of the argument. * @returns - A emoji argument. */ export declare function emojiArgument(options?: ArgumentBuilder): Argument; /** * Creates a enum argument. * You must put an enum (or a record) of the possible values. * The value can be any key of the possible values and it will return the value of the entry. * * @param options - The options of the argument. * @returns - A enum argument. */ export declare function enumArgument, V>(options: ArgumentBuilder & { values: E; }): Argument; /** * Creates a event argument. * The value can can be any event name. * * @param options - The options of the argument. * @returns - A event argument. */ export declare function eventArgument(options?: ArgumentBuilder): Argument; /** * Creates a float argument. * The value can be any int or float number. * * @param options - The options of the argument. * @returns - A float argument. */ export declare function floatArgument(options?: ArgumentBuilder): Argument; /** * Creates a guild argument. * The value can be an ID or a name of a guild of the client. * * @param options - The options of the argument. * @returns - A guild argument. */ export declare function guildArgument(options?: ArgumentBuilder): Argument; /** * Creates a guildMember argument. * The value can be an ID, mention, nickname or username of any member from the actual guild where the command was executed. * If executed in DM it will always return `null`. * * @param options - The options of the argument. * @returns - A guildMember argument. */ export declare function guildMemberArgument(options?: ArgumentBuilder): Argument; /** * Creates a int argument. * The value can be any integer. * * @param options - The options of the argument. * @returns - A int argument. */ export declare function intArgument(options?: ArgumentBuilder): Argument; /** * Creates a message argument. * The value can be any ID or URL of a message, if the value is an ID it will search in the last 100 messages of all the channels of the current guild. * * @param options - The options of the argument. * @returns - A message argument. */ export declare function messageArgument(options?: ArgumentBuilder): Argument; /** * Creates a snowflake argument. * The value can be any value that ressemble a snowflake. * @see {@link https://discord.com/developers/docs/reference#snowflakes} * * @param options - The options of the argument. * @returns - A snowflake argument. */ export declare function snowflakeArgument(options?: ArgumentBuilder): Argument; /** * Creates a string argument. * The value can be anything. * It can also be filtered using the optional `regex` option. * * @param options - The options of the argument. * @returns - A string argument. */ export declare function stringArgument(options?: ArgumentBuilder & { regex?: RegExp; }): Argument; /** * Creates a regex argument. * The value must be any valid JS regex, it also supports flags. * * @param options - The options of the argument. * @returns - A regex argument. */ export declare function regexArgument(options?: ArgumentBuilder): Argument; /** * Creates a textChannel argument. * The value can be an ID, mention or name of a TextChannel or a NewsChannel. * If a channel is found but is not a TextChannel or a NewsChannel, it will returns null. * * @param options - The options of the argument. * @returns - A textChannel argument. */ export declare function textChannelArgument(options?: ArgumentBuilder): Argument; /** * Creates a user argument. * The value can be an ID, mention or username of an user. * * @param options - The options of the argument. * @returns - A user argument. */ export declare function userArgument(options?: ArgumentBuilder): Argument;