/** * Special options passed to Repository#save, Repository#insert and Repository#update methods. */ export interface SaveOptions { /** * Additional data to be passed with persist method. * This data can be used in subscribers then. */ data?: any; /** * Indicates if listeners and subscribers are called for this operation. * By default they are enabled, you can disable them by setting { listeners: false } in save/remove options. */ listeners?: boolean; /** * By default transactions are enabled and all queries in persistence operation are wrapped into the transaction. * You can disable this behaviour by setting { transaction: false } in the persistence options. */ transaction?: boolean; /** * Breaks save execution into chunks of a given size. * For example, if you want to save 100,000 objects but you have issues with saving them, * you can break them into 10 groups of 10,000 objects (by setting { chunk: 10000 }) and save each group separately. * This option is needed to perform very big insertions when you have issues with underlying driver parameter number limitation. */ chunk?: number; /** * Flag to determine whether the entity that is being persisted * should be reloaded during the persistence operation. * * It will work only on databases which does not support RETURNING / OUTPUT statement. * Enabled by default. */ reload?: boolean; }