@serverless-plugin-sqs-local/serverless-plugin-sqs-local
Version:
72 lines (71 loc) • 2.1 kB
TypeScript
import * as Serverless from 'serverless';
declare type PluginOptions = Serverless.Options & {
ElasticMQDownloadUrl?: string;
ElasticMQPath?: string;
ElasticMQPort?: number;
location?: string;
};
declare const commands: {
elasticmq: {
commands: {
install: {
usage: string;
lifecycleEvents: string[];
options: {
ElasticMQDownloadUrl: {
type: string;
usage: string;
};
ElasticMQPath: {
type: string;
usage: string;
};
};
};
start: {
lifecycleEvents: string[];
usage: string;
options: {
ElasticMQPath: {
type: string;
usage: string;
};
ElasticMQPort: {
type: string;
usage: string;
};
};
};
};
};
};
declare type Commands = typeof commands;
interface Hooks {
[event: string]: () => Promise<any>;
}
export default class ServerlessElasticMQ {
private serverless;
private options;
private service;
commands: Commands;
hooks: Hooks;
private port?;
private sqsClient?;
private lambda;
constructor(serverless: Serverless, options: PluginOptions);
installHandler: () => Promise<void>;
private buildElasticMQOptions;
private getConfig;
startHandler: () => Promise<Promise<void>[]>;
private startOfflineSQS;
private createOfflineSQSQueues;
private createInitialQueue;
private startOfflineKinesis;
private createQueueReadable;
private getQueueName;
private extractQueueNameFromARN;
private handleEvent;
stopHandler: () => Promise<void>;
private get endpoint();
}
export {};