Squashed 'vendor/ruvector/' content from commit b64c2172
git-subtree-dir: vendor/ruvector git-subtree-split: b64c21726f2bb37286d9ee36a7869fef60cc6900
This commit is contained in:
207
npm/packages/ruvbot/tests/mocks/slack.mock.d.ts
vendored
Normal file
207
npm/packages/ruvbot/tests/mocks/slack.mock.d.ts
vendored
Normal file
@@ -0,0 +1,207 @@
|
||||
/**
|
||||
* Slack API Mock Module
|
||||
*
|
||||
* Mock implementations for Slack Web API and Events API
|
||||
*/
|
||||
export interface SlackMessage {
|
||||
channel: string;
|
||||
text: string;
|
||||
thread_ts?: string;
|
||||
blocks?: unknown[];
|
||||
attachments?: unknown[];
|
||||
metadata?: Record<string, unknown>;
|
||||
}
|
||||
export interface SlackResponse {
|
||||
ok: boolean;
|
||||
error?: string;
|
||||
ts?: string;
|
||||
channel?: string;
|
||||
message?: Record<string, unknown>;
|
||||
}
|
||||
export interface SlackUser {
|
||||
id: string;
|
||||
name: string;
|
||||
real_name: string;
|
||||
is_bot: boolean;
|
||||
team_id: string;
|
||||
}
|
||||
export interface SlackChannel {
|
||||
id: string;
|
||||
name: string;
|
||||
is_private: boolean;
|
||||
is_member: boolean;
|
||||
team_id: string;
|
||||
}
|
||||
/**
|
||||
* Mock Slack Web Client
|
||||
*/
|
||||
export declare class MockSlackWebClient {
|
||||
private messageLog;
|
||||
private _reactionsData;
|
||||
private _filesData;
|
||||
private _usersData;
|
||||
private _channelsData;
|
||||
constructor();
|
||||
chat: {
|
||||
postMessage: import("vitest").Mock<[args: SlackMessage], Promise<SlackResponse>>;
|
||||
update: import("vitest").Mock<[args: {
|
||||
channel: string;
|
||||
ts: string;
|
||||
text?: string;
|
||||
blocks?: unknown[];
|
||||
}], Promise<SlackResponse>>;
|
||||
delete: import("vitest").Mock<[args: {
|
||||
channel: string;
|
||||
ts: string;
|
||||
}], Promise<SlackResponse>>;
|
||||
postEphemeral: import("vitest").Mock<[args: SlackMessage & {
|
||||
user: string;
|
||||
}], Promise<SlackResponse>>;
|
||||
};
|
||||
conversations: {
|
||||
info: import("vitest").Mock<[args: {
|
||||
channel: string;
|
||||
}], Promise<{
|
||||
ok: boolean;
|
||||
channel?: SlackChannel;
|
||||
}>>;
|
||||
members: import("vitest").Mock<[args: {
|
||||
channel: string;
|
||||
}], Promise<{
|
||||
ok: boolean;
|
||||
members: string[];
|
||||
}>>;
|
||||
history: import("vitest").Mock<[args: {
|
||||
channel: string;
|
||||
limit?: number;
|
||||
}], Promise<{
|
||||
ok: boolean;
|
||||
messages: unknown[];
|
||||
}>>;
|
||||
replies: import("vitest").Mock<[args: {
|
||||
channel: string;
|
||||
ts: string;
|
||||
}], Promise<{
|
||||
ok: boolean;
|
||||
messages: unknown[];
|
||||
}>>;
|
||||
join: import("vitest").Mock<[args: {
|
||||
channel: string;
|
||||
}], Promise<SlackResponse>>;
|
||||
leave: import("vitest").Mock<[args: {
|
||||
channel: string;
|
||||
}], Promise<SlackResponse>>;
|
||||
};
|
||||
users: {
|
||||
info: import("vitest").Mock<[args: {
|
||||
user: string;
|
||||
}], Promise<{
|
||||
ok: boolean;
|
||||
user?: SlackUser;
|
||||
}>>;
|
||||
list: import("vitest").Mock<[], Promise<{
|
||||
ok: boolean;
|
||||
members: SlackUser[];
|
||||
}>>;
|
||||
};
|
||||
reactions: {
|
||||
add: import("vitest").Mock<[args: {
|
||||
channel: string;
|
||||
timestamp: string;
|
||||
name: string;
|
||||
}], Promise<SlackResponse>>;
|
||||
remove: import("vitest").Mock<[args: {
|
||||
channel: string;
|
||||
timestamp: string;
|
||||
name: string;
|
||||
}], Promise<SlackResponse>>;
|
||||
get: import("vitest").Mock<[args: {
|
||||
channel: string;
|
||||
timestamp: string;
|
||||
}], Promise<{
|
||||
ok: boolean;
|
||||
message: {
|
||||
reactions: unknown[];
|
||||
};
|
||||
}>>;
|
||||
};
|
||||
files: {
|
||||
upload: import("vitest").Mock<[args: {
|
||||
channels: string;
|
||||
content: string;
|
||||
filename: string;
|
||||
}], Promise<{
|
||||
ok: boolean;
|
||||
file: unknown;
|
||||
}>>;
|
||||
delete: import("vitest").Mock<[args: {
|
||||
file: string;
|
||||
}], Promise<SlackResponse>>;
|
||||
};
|
||||
auth: {
|
||||
test: import("vitest").Mock<[], Promise<{
|
||||
ok: boolean;
|
||||
user_id: string;
|
||||
team_id: string;
|
||||
bot_id: string;
|
||||
}>>;
|
||||
};
|
||||
getMessageLog(): SlackMessage[];
|
||||
clearMessageLog(): void;
|
||||
getReactions(channel: string, timestamp: string): string[];
|
||||
addUser(user: SlackUser): void;
|
||||
addChannel(channel: SlackChannel): void;
|
||||
reset(): void;
|
||||
private seedDefaultData;
|
||||
}
|
||||
/**
|
||||
* Mock Slack Events Handler
|
||||
*/
|
||||
export declare class MockSlackEventsHandler {
|
||||
private eventHandlers;
|
||||
private processedEvents;
|
||||
on(eventType: string, handler: (event: unknown) => void): void;
|
||||
off(eventType: string, handler: (event: unknown) => void): void;
|
||||
emit(eventType: string, event: unknown): Promise<void>;
|
||||
getProcessedEvents(): unknown[];
|
||||
clearProcessedEvents(): void;
|
||||
reset(): void;
|
||||
}
|
||||
/**
|
||||
* Mock Slack Bolt App
|
||||
*/
|
||||
export declare class MockSlackBoltApp {
|
||||
client: MockSlackWebClient;
|
||||
private eventsHandler;
|
||||
private messageHandlers;
|
||||
private actionHandlers;
|
||||
private commandHandlers;
|
||||
constructor();
|
||||
message(pattern: RegExp | string, handler: Function): void;
|
||||
action(actionId: string | RegExp, handler: Function): void;
|
||||
command(command: string, handler: Function): void;
|
||||
event(eventType: string, handler: Function): void;
|
||||
processMessage(message: {
|
||||
text: string;
|
||||
channel: string;
|
||||
user: string;
|
||||
ts: string;
|
||||
thread_ts?: string;
|
||||
}): Promise<void>;
|
||||
processAction(actionId: string, payload: unknown): Promise<void>;
|
||||
processCommand(command: string, payload: unknown): Promise<void>;
|
||||
start(port?: number): Promise<void>;
|
||||
stop(): Promise<void>;
|
||||
reset(): void;
|
||||
}
|
||||
export declare function createMockSlackClient(): MockSlackWebClient;
|
||||
export declare function createMockSlackApp(): MockSlackBoltApp;
|
||||
declare const _default: {
|
||||
MockSlackWebClient: typeof MockSlackWebClient;
|
||||
MockSlackEventsHandler: typeof MockSlackEventsHandler;
|
||||
MockSlackBoltApp: typeof MockSlackBoltApp;
|
||||
createMockSlackClient: typeof createMockSlackClient;
|
||||
createMockSlackApp: typeof createMockSlackApp;
|
||||
};
|
||||
export default _default;
|
||||
//# sourceMappingURL=slack.mock.d.ts.map
|
||||
Reference in New Issue
Block a user