{
    "name": "@daiso-tech/core",
    "private": false,
    "version": "0.38.0",
    "author": "Yousif Abdulkarim",
    "license": "Apache-2.0",
    "type": "module",
    "homepage": "http://daiso-core.vercel.app/",
    "description": "The library offers flexible, framework-agnostic solutions for modern web applications, built on adaptable components that integrate seamlessly with popular frameworks like Next Js.",
    "repository": {
        "type": "git",
        "url": "git+https://github.com/yousif-khalil-abdulkarim/daiso-core.git"
    },
    "keywords": [
        "Async collection",
        "Collection",
        "Array",
        "Iterable",
        "AsyncIterable",
        "Cache",
        "Storage",
        "EventBus",
        "PuSub",
        "Lock",
        "Distributed lock",
        "Mutex",
        "Distributed mutex",
        "Serialization",
        "Serializer",
        "Deserialization",
        "Deserializer",
        "Mongodb",
        "Redis",
        "Sqlite3",
        "Turso",
        "Libsql",
        "Mysql",
        "Mariadb",
        "Postgres",
        "TypeScript",
        "JavaScript",
        "Multitenant",
        "Multitenancy",
        "LazyPromise",
        "AsyncMiddleware",
        "AsyncHooks",
        "Async middlewares",
        "Async hooks",
        "Middleware",
        "Middlewares",
        "Hooks",
        "Fallback",
        "Retry",
        "Timeout",
        "Deadline",
        "resilience",
        "Resilience",
        "Hedging",
        "Fallback hedging",
        "Sequential hedging",
        "Parallel hedging",
        "Concurrent hedging",
        "Latency hedging"
    ],
    "files": [
        "./dist"
    ],
    "exports": {
        "./async": {
            "types": "./dist/async/_module-exports.d.ts",
            "import": "./dist/async/_module-exports.js"
        },
        "./cache": {
            "types": "./dist/cache/implementations/derivables/_module-exports.d.ts",
            "import": "./dist/cache/implementations/derivables/_module-exports.js"
        },
        "./cache/contracts": {
            "types": "./dist/cache/contracts/_module-exports.d.ts",
            "import": "./dist/cache/contracts/_module-exports.js"
        },
        "./cache/adapters": {
            "types": "./dist/cache/implementations/adapters/_module-exports.d.ts",
            "import": "./dist/cache/implementations/adapters/_module-exports.js"
        },
        "./cache/test-utilities": {
            "types": "./dist/cache/implementations/test-utilities/_module-exports.d.ts",
            "import": "./dist/cache/implementations/test-utilities/_module-exports.js"
        },
        "./collection": {
            "types": "./dist/collection/implementations/_module-exports.d.ts",
            "import": "./dist/collection/implementations/_module-exports.js"
        },
        "./collection/contracts": {
            "types": "./dist/collection/contracts/_module-exports.d.ts",
            "import": "./dist/collection/contracts/_module-exports.js"
        },
        "./event-bus": {
            "types": "./dist/event-bus/implementations/derivables/_module-exports.d.ts",
            "import": "./dist/event-bus/implementations/derivables/_module-exports.js"
        },
        "./event-bus/contracts": {
            "types": "./dist/event-bus/contracts/_module-exports.d.ts",
            "import": "./dist/event-bus/contracts/_module-exports.js"
        },
        "./event-bus/adapters": {
            "types": "./dist/event-bus/implementations/adapters/_module-exports.d.ts",
            "import": "./dist/event-bus/implementations/adapters/_module-exports.js"
        },
        "./event-bus/test-utilities": {
            "types": "./dist/event-bus/implementations/test-utilities/_module-exports.d.ts",
            "import": "./dist/event-bus/implementations/test-utilities/_module-exports.js"
        },
        "./lock": {
            "types": "./dist/lock/implementations/derivables/_module-exports.d.ts",
            "import": "./dist/lock/implementations/derivables/_module-exports.js"
        },
        "./lock/contracts": {
            "types": "./dist/lock/contracts/_module-exports.d.ts",
            "import": "./dist/lock/contracts/_module-exports.js"
        },
        "./lock/adapters": {
            "types": "./dist/lock/implementations/adapters/_module-exports.d.ts",
            "import": "./dist/lock/implementations/adapters/_module-exports.js"
        },
        "./lock/test-utilities": {
            "types": "./dist/lock/implementations/test-utilities/_module-exports.d.ts",
            "import": "./dist/lock/implementations/test-utilities/_module-exports.js"
        },
        "./serde": {
            "types": "./dist/serde/implementations/derivables/_module-exports.d.ts",
            "import": "./dist/serde/implementations/derivables/_module-exports.js"
        },
        "./serde/contracts": {
            "types": "./dist/serde/contracts/_module-exports.d.ts",
            "import": "./dist/serde/contracts/_module-exports.js"
        },
        "./serde/adapters": {
            "types": "./dist/serde/implementations/adapters/_module-exports.d.ts",
            "import": "./dist/serde/implementations/adapters/_module-exports.js"
        },
        "./serde/test-utilities": {
            "types": "./dist/serde/implementations/test-utilities/_module-exports.d.ts",
            "import": "./dist/serde/implementations/test-utilities/_module-exports.js"
        },
        "./utilities": {
            "types": "./dist/utilities/_module-exports.d.ts",
            "import": "./dist/utilities/_module-exports.js"
        }
    },
    "scripts": {
        "test": "npx vitest run",
        "test:watch": "npm run test -- watch",
        "check": "npx tsc --project \"./tsconfig.json\"",
        "lint": "npx eslint \"**/*.{js,jsx,ts,tsx}\"",
        "lint:fix": "npx eslint \"**/*.{js,jsx,ts,tsx}\" --fix",
        "build": "npx rimraf dist && npx tsc --project \"./tsconfig.build.json\" && npx tsc-alias -p \"./tsconfig.build.json\"",
        "publint": "npm run build && npx publint",
        "check:all": "npm run check && npm run lint && npm run test && npm run publint",
        "docs": "npx typedoc",
        "release": "npm run build && npx changeset publish"
    },
    "devDependencies": {
        "@changesets/cli": "^2.27.7",
        "@standard-schema/spec": "^1.0.0",
        "@testcontainers/mongodb": "^10.13.2",
        "@testcontainers/mysql": "^11.0.0",
        "@testcontainers/postgresql": "^11.0.0",
        "@testcontainers/redis": "^10.13.2",
        "@types/better-sqlite3": "^7.6.11",
        "@types/pg": "^8.15.4",
        "@types/uuid": "^10.0.0",
        "@typescript-eslint/eslint-plugin": "^8.1.0",
        "@typescript-eslint/parser": "^8.1.0",
        "@vitest/eslint-plugin": "^1.0.3",
        "better-sqlite3": "^11.5.0",
        "eslint": "^8.57.0",
        "eslint-config-prettier": "^9.1.0",
        "eslint-plugin-no-relative-import-paths": "^1.5.5",
        "eslint-plugin-only-error": "^1.0.2",
        "eslint-plugin-prettier": "^5.2.1",
        "eslint-plugin-tsdoc": "^0.3.0",
        "eslint-plugin-typescript-enum": "^2.1.0",
        "eslint-plugin-vitest": "^0.5.4",
        "ioredis": "^5.4.1",
        "kysely": "^0.28.2",
        "mongodb": "^6.10.0",
        "mysql2": "^3.14.1",
        "pg": "^8.16.0",
        "publint": "^0.3.8",
        "rimraf": "^6.0.1",
        "tsc-alias": "^1.8.10",
        "typedoc": "0.27.1",
        "typedoc-plugin-merge-modules": "6.1.0",
        "typescript": "^5.5.4",
        "vite-tsconfig-paths": "^4.3.2",
        "vitest": "^3.0.2",
        "zod": "^3.25.49"
    },
    "peerDependencies": {
        "ioredis": "^5.0.0",
        "mongodb": "^6.0.0",
        "kysely": "^0.28.0"
    },
    "peerDependenciesMeta": {
        "mongodb": {
            "optional": true
        },
        "ioredis": {
            "optional": true
        },
        "kysely": {
            "optional": true
        }
    },
    "dependencies": {
        "escape-string-regexp": "^5.0.0",
        "superjson": "^2.2.2",
        "uuid": "^11.0.5"
    }
}
