aboutsummaryrefslogtreecommitdiff
path: root/src/internal
diff options
context:
space:
mode:
Diffstat (limited to 'src/internal')
-rw-r--r--src/internal/module-base.ts25
1 files changed, 25 insertions, 0 deletions
diff --git a/src/internal/module-base.ts b/src/internal/module-base.ts
new file mode 100644
index 00000000..aceba703
--- /dev/null
+++ b/src/internal/module-base.ts
@@ -0,0 +1,25 @@
+import type { Faker } from '../faker';
+import type { SimpleFaker } from '../simple-faker';
+import { bindThisToMemberFunctions } from './bind-this-to-member-functions';
+
+/**
+ * Base class for all modules that use a `SimpleFaker` instance.
+ *
+ * @internal
+ */
+export abstract class SimpleModuleBase {
+ constructor(protected readonly faker: SimpleFaker) {
+ bindThisToMemberFunctions(this);
+ }
+}
+
+/**
+ * Base class for all modules that use a `Faker` instance.
+ *
+ * @internal
+ */
+export abstract class ModuleBase extends SimpleModuleBase {
+ constructor(protected readonly faker: Faker) {
+ super(faker);
+ }
+}