@seratch_/bolt-fastify
Version:
Bolt for JavaScript Extension - Fastify
39 lines • 1.37 kB
TypeScript
import { Logger } from '@slack/logger';
import { Sequelize } from 'sequelize';
import SlackAppInstallation from './SlackAppInstallation';
import { DeleteInstallationCallbackArgs, FetchInstallationCallbackArgs, StoreInstallationCallbackArgs } from './SequelizeInstallationStoreCallbackArgs';
export default interface SequelizeInstallationStoreArgs<M extends SlackAppInstallation> {
/**
* Sequelize database client object.
*/
sequelize: Sequelize;
/**
* The model for managing installations
*/
model?: typeof SlackAppInstallation;
/**
* For managing multiple Slack apps in a single database table
*/
clientId?: string;
/**
* Stores all the installation data if true. The default value is true.
*/
historicalDataEnabled?: boolean;
/**
* Callback for #storeInstallation()
*/
onStoreInstallation?: (args: StoreInstallationCallbackArgs<M>) => Promise<void>;
/**
* Callback for #fetchInstallation()
*/
onFetchInstallation?: (args: FetchInstallationCallbackArgs<M>) => Promise<void>;
/**
* Callback for #deleteInstallation()
*/
onDeleteInstallation?: (args: DeleteInstallationCallbackArgs) => Promise<void>;
/**
* Logger for this module's internal logs.
*/
logger?: Logger;
}
//# sourceMappingURL=SequelizeInstallationStoreArgs.d.ts.map