discord-api-types
Version:
Discord API typings that are kept up to date for use in bot library creation.
68 lines • 2.6 kB
TypeScript
import type { Snowflake } from '../../globals';
import type { APIAutoModerationAction, APIAutoModerationRule, AutoModerationRuleEventType, APIAutoModerationRuleTriggerMetadata, AutoModerationRuleTriggerType } from '../../payloads/v9/index';
/**
* @see {@link https://discord.com/developers/docs/resources/auto-moderation#list-auto-moderation-rules-for-guild}
*/
export type RESTGetAPIAutoModerationRulesResult = APIAutoModerationRule[];
/**
* @see {@link https://discord.com/developers/docs/resources/auto-moderation#get-auto-moderation-rule}
*/
export type RESTGetAPIAutoModerationRuleResult = APIAutoModerationRule;
/**
* @see {@link https://discord.com/developers/docs/resources/auto-moderation#create-auto-moderation-rule}
*/
export interface RESTPostAPIAutoModerationRuleJSONBody {
/**
* The rule name
*/
name: string;
/**
* The rule event type
*/
event_type: AutoModerationRuleEventType;
/**
* The rule trigger type
*/
trigger_type: AutoModerationRuleTriggerType;
/**
* The rule trigger metadata
*
* Can be omitted if the trigger type is {@link AutoModerationRuleTriggerType.Spam}
*/
trigger_metadata?: APIAutoModerationRuleTriggerMetadata | undefined;
/**
* The actions which will execute when this rule is triggered
*/
actions: APIAutoModerationAction[];
/**
* Whether this rule is enabled
*
* @defaultValue `false`
*/
enabled?: boolean | undefined;
/**
* The role ids that shouldn't be affected by this rule (Maximum of 20)
*/
exempt_roles?: Snowflake[] | undefined;
/**
* The channel ids that shouldn't be affected by this rule (Maximum of 50)
*/
exempt_channels?: Snowflake[] | undefined;
}
/**
* @see {@link https://discord.com/developers/docs/resources/auto-moderation#create-auto-moderation-rule}
*/
export type RESTPostAPIAutoModerationRuleResult = APIAutoModerationRule;
/**
* @see {@link https://discord.com/developers/docs/resources/auto-moderation#modify-auto-moderation-rule}
*/
export type RESTPatchAPIAutoModerationRuleJSONBody = Omit<Partial<RESTPostAPIAutoModerationRuleJSONBody>, 'trigger_type'>;
/**
* @see {@link https://discord.com/developers/docs/resources/auto-moderation#modify-auto-moderation-rule}
*/
export type RESTPatchAPIAutoModerationRuleResult = APIAutoModerationRule;
/**
* @see {@link https://discord.com/developers/docs/resources/auto-moderation#delete-auto-moderation-rule}
*/
export type RESTDeleteAPIAutoModerationRuleResult = never;
//# sourceMappingURL=autoModeration.d.ts.map