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, '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