mirror of
				https://github.com/strapi/strapi.git
				synced 2025-10-31 09:56:44 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			52 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			TypeScript
		
	
	
	
	
	
			
		
		
	
	
			52 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			TypeScript
		
	
	
	
	
	
| import { Database } from '../';
 | |
| import { Model } from '../schema';
 | |
| import { Subscriber } from './subscribers';
 | |
| 
 | |
| export type Action =
 | |
|   | 'beforeCreate'
 | |
|   | 'afterCreate'
 | |
|   | 'beforeFindOne'
 | |
|   | 'afterFindOne'
 | |
|   | 'beforeFindMany'
 | |
|   | 'afterFindMany'
 | |
|   | 'beforeCount'
 | |
|   | 'afterCount'
 | |
|   | 'beforeCreateMany'
 | |
|   | 'afterCreateMany'
 | |
|   | 'beforeUpdate'
 | |
|   | 'afterUpdate'
 | |
|   | 'beforeUpdateMany'
 | |
|   | 'afterUpdateMany'
 | |
|   | 'beforeDelete'
 | |
|   | 'afterDelete'
 | |
|   | 'beforeDeleteMany'
 | |
|   | 'afterDeleteMany';
 | |
| 
 | |
| export interface Params {
 | |
|   select?: any;
 | |
|   where?: any;
 | |
|   _q?: any;
 | |
|   orderBy?: any;
 | |
|   groupBy?: any;
 | |
|   offset?: any;
 | |
|   limit?: any;
 | |
|   populate?: any;
 | |
|   data?: any;
 | |
| }
 | |
| 
 | |
| export interface Event {
 | |
|   action: Action;
 | |
|   model: Model;
 | |
|   params: Params;
 | |
| }
 | |
| 
 | |
| export interface LifecycleProvider {
 | |
|   subscribe(subscriber: Subscriber): () => void;
 | |
|   clear(): void;
 | |
|   run(action: Action, uid: string, properties: any): Promise<Map<any, any>>;
 | |
|   run(action: Action, uid: string, properties: any, states: Map<any, any>): Promise<Map<any, any>>;
 | |
|   createEvent(action: Action, uid: string, properties: any): Event;
 | |
| }
 | |
| 
 | |
| export function createLifecyclesProvider(db: Database): LifecycleProvider;
 | 
