import type { AdaptorButtonInteraction, AdaptorChannelSelectComponent, AdaptorChannelSelectInteraction, AdaptorInteraction, AdaptorInteractionResponseModalData, AdaptorMentionableSelectComponent, AdaptorMentionableSelectInteraction, AdaptorModalSubmitInteraction, AdaptorNonLinkButtonComponent, AdaptorPartialChannel, AdaptorRole, AdaptorRoleSelectComponent, AdaptorRoleSelectInteraction, AdaptorStringSelectComponent, AdaptorStringSelectInteraction, AdaptorUser, AdaptorUserSelectComponent, AdaptorUserSelectInteraction, Snowflake } from "../adaptor"; import type { Lazy } from "../util/lazy"; import type { RandomSource } from "../util/randomSource"; import type { Awaitable } from "../util/types"; type LazyOverrideParam = Lazy>, Readonly>; export declare const createEmitInteractionTestUtil: (emitInteraction: (interaction: AdaptorInteraction) => Promise, act: (cb: () => Awaitable, messageId?: string) => Promise, randomSource: RandomSource) => { emitInteraction: (interaction: AdaptorInteraction) => Promise; emitButtonInteraction: (customId: Snowflake, overrideParam?: LazyOverrideParam) => Promise; emitStringSelectInteraction: (customId: Snowflake, values: readonly string[], overrideParam?: LazyOverrideParam) => Promise; emitUserSelectInteraction: (customId: Snowflake, dummyUsers: number | readonly Partial[], overrideParam?: LazyOverrideParam) => Promise; emitRoleSelectInteraction: (customId: Snowflake, dummyRole: number | readonly Partial[], overrideParam?: LazyOverrideParam) => Promise; emitChannelSelectInteraction: (customId: Snowflake, dummyChannelTypes: readonly (Partial & Pick)[], overrideParam?: LazyOverrideParam) => Promise; emitMentionableSelectInteraction: (customId: Snowflake, dummyMentionables: Readonly<(({ type: "user"; } & Partial) | ({ type: "role"; } & Partial))[]>, overrideParam?: LazyOverrideParam) => Promise; clickButtonComponent: (component: AdaptorNonLinkButtonComponent, overrideParam?: LazyOverrideParam) => Promise; selectStringSelectComponent: (component: Readonly, values: string[], overrideParam?: LazyOverrideParam) => Promise; selectUserSelectComponent: (component: Readonly, dummyUsers: number | readonly Partial[], overrideParam?: LazyOverrideParam) => Promise; selectRoleSelectComponent: (component: Readonly, dummyRoles: number | readonly Partial[], overrideParam?: LazyOverrideParam) => Promise; selectChannelSelectComponent: (component: Readonly, dummyChannels: readonly (Partial & Pick)[], overrideParam?: LazyOverrideParam) => Promise; selectMentionableSelectComponent: (component: Readonly, dummyMentionables: Readonly<(({ type: "user"; } & Partial) | ({ type: "role"; } & Partial))[]>, overrideParam?: LazyOverrideParam) => Promise; confirmModal: (responseData: Readonly, fields: Readonly>, overrideParam?: LazyOverrideParam) => Promise; }; export {}; //# sourceMappingURL=emitInteractionUtil.d.ts.map