aboutsummaryrefslogtreecommitdiff
path: root/src/client/northstar/utils/Extensions.ts
diff options
context:
space:
mode:
Diffstat (limited to 'src/client/northstar/utils/Extensions.ts')
-rw-r--r--src/client/northstar/utils/Extensions.ts13
1 files changed, 4 insertions, 9 deletions
diff --git a/src/client/northstar/utils/Extensions.ts b/src/client/northstar/utils/Extensions.ts
index 720f4a062..c866d1bc3 100644
--- a/src/client/northstar/utils/Extensions.ts
+++ b/src/client/northstar/utils/Extensions.ts
@@ -20,22 +20,17 @@ String.prototype.Truncate = function (length: number, replacement: string): Stri
return target;
};
-interface Action<T> {
- handler: (batch: T[]) => any;
- interval?: number;
-}
-interface BatchParameters<T> {
- size: number;
- action?: Action<T>;
-}
+type BatchHandler<I, O> = (batch: I[]) => O[] | Promise<O[]>;
interface Array<T> {
- batch(parameters: BatchParameters<T>): Promise<T[][]>;
+ batch(batchSize: number): T[][];
+ batchAction<O>(batchSize: number, handler: BatchHandler<T, O>, interval?: number): Promise<O[]>;
lastElement(): T;
}
Array.prototype.batch = extensions.Batch;
+Array.prototype.batchAction = extensions.BatchAction;
Array.prototype.lastElement = function <T>() {
if (!this.length) {