{
	"name": "ink",
	"version": "6.8.0",
	"description": "React for CLI",
	"license": "MIT",
	"repository": "vadimdemedes/ink",
	"author": {
		"name": "Vadim Demedes",
		"email": "vadimdemedes@hey.com",
		"url": "https://github.com/vadimdemedes"
	},
	"type": "module",
	"exports": {
		"types": "./build/index.d.ts",
		"default": "./build/index.js"
	},
	"engines": {
		"node": ">=20"
	},
	"scripts": {
		"dev": "tsc --watch",
		"build": "tsc",
		"prepare": "npm run build",
		"test": "tsc --noEmit && xo && FORCE_COLOR=true ava",
		"example": "NODE_NO_WARNINGS=1 node --import=tsx",
		"benchmark": "NODE_NO_WARNINGS=1 node --import=tsx",
		"inspect": "react-devtools"
	},
	"files": [
		"build"
	],
	"keywords": [
		"react",
		"cli",
		"jsx",
		"stdout",
		"components",
		"command-line",
		"preact",
		"redux",
		"print",
		"render",
		"colors",
		"text"
	],
	"dependencies": {
		"@alcalzone/ansi-tokenize": "^0.2.4",
		"ansi-escapes": "^7.3.0",
		"ansi-styles": "^6.2.1",
		"auto-bind": "^5.0.1",
		"chalk": "^5.6.0",
		"cli-boxes": "^3.0.0",
		"cli-cursor": "^4.0.0",
		"cli-truncate": "^5.1.1",
		"code-excerpt": "^4.0.0",
		"es-toolkit": "^1.39.10",
		"indent-string": "^5.0.0",
		"is-in-ci": "^2.0.0",
		"patch-console": "^2.0.0",
		"react-reconciler": "^0.33.0",
		"scheduler": "^0.27.0",
		"signal-exit": "^3.0.7",
		"slice-ansi": "^8.0.0",
		"stack-utils": "^2.0.6",
		"string-width": "^8.1.1",
		"terminal-size": "^4.0.1",
		"type-fest": "^5.4.1",
		"widest-line": "^6.0.0",
		"wrap-ansi": "^9.0.0",
		"ws": "^8.18.0",
		"yoga-layout": "~3.2.1"
	},
	"devDependencies": {
		"@faker-js/faker": "^10.3.0",
		"@sindresorhus/tsconfig": "^7.0.0",
		"@sinonjs/fake-timers": "^15.1.0",
		"@types/ms": "^2.1.0",
		"@types/node": "^25.0.10",
		"@types/react": "^19.2.13",
		"@types/react-reconciler": "^0.33.0",
		"@types/scheduler": "^0.26.0",
		"@types/signal-exit": "^3.0.0",
		"@types/sinon": "^21.0.0",
		"@types/stack-utils": "^2.0.2",
		"@types/ws": "^8.18.1",
		"@vdemedes/prettier-config": "^2.0.1",
		"ava": "^5.1.1",
		"boxen": "^8.0.1",
		"delay": "^7.0.0",
		"eslint-config-xo-react": "0.27.0",
		"eslint-plugin-react": "^7.37.5",
		"eslint-plugin-react-hooks": "^5.0.0",
		"ms": "^2.1.3",
		"node-pty": "^1.2.0-beta.10",
		"p-queue": "^9.0.0",
		"prettier": "^3.8.1",
		"react": "^19.2.4",
		"react-devtools-core": "^7.0.1",
		"react-devtools": "^7.0.1",
		"react-router": "^7.13.0",
		"sinon": "^21.0.0",
		"strip-ansi": "^7.1.0",
		"tsx": "^4.21.0",
		"typescript": "^5.8.3",
		"xo": "^0.59.3"
	},
	"peerDependencies": {
		"@types/react": ">=19.0.0",
		"react": ">=19.0.0",
		"react-devtools-core": ">=6.1.2"
	},
	"peerDependenciesMeta": {
		"@types/react": {
			"optional": true
		},
		"react-devtools-core": {
			"optional": true
		}
	},
	"ava": {
		"workerThreads": false,
		"serial": true,
		"files": [
			"test/**/*",
			"!test/helpers/**/*",
			"!test/fixtures/**/*"
		],
		"extensions": {
			"ts": "module",
			"tsx": "module"
		},
		"nodeArguments": [
			"--import=tsx"
		]
	},
	"xo": {
		"extends": [
			"xo-react"
		],
		"plugins": [
			"react"
		],
		"prettier": true,
		"rules": {
			"react/no-unescaped-entities": "off",
			"react/state-in-constructor": "off",
			"react/jsx-indent": "off",
			"react/prop-types": "off",
			"unicorn/import-index": "off",
			"import/no-useless-path-segments": "off",
			"react-hooks/exhaustive-deps": "off",
			"complexity": "off"
		},
		"ignores": [
			"src/parse-keypress.ts"
		],
		"overrides": [
			{
				"files": [
					"src/**/*.{ts,tsx}",
					"test/**/*.{ts,tsx}"
				],
				"rules": {
					"no-unused-expressions": "off",
					"camelcase": [
						"error",
						{
							"allow": [
								"^unstable__",
								"^internal_"
							]
						}
					],
					"unicorn/filename-case": "off",
					"react/default-props-match-prop-types": "off",
					"unicorn/prevent-abbreviations": "off",
					"react/require-default-props": "off",
					"react/jsx-curly-brace-presence": "off",
					"@typescript-eslint/no-empty-function": "off",
					"@typescript-eslint/promise-function-async": "warn",
					"@typescript-eslint/explicit-function-return": "off",
					"@typescript-eslint/explicit-function-return-type": "off",
					"dot-notation": "off",
					"react/boolean-prop-naming": "off",
					"unicorn/prefer-dom-node-remove": "off",
					"unicorn/prefer-event-target": "off"
				}
			},
			{
				"files": [
					"examples/**/*.{ts,tsx}",
					"benchmark/**/*.{ts,tsx}"
				],
				"rules": {
					"import/no-unassigned-import": "off"
				}
			}
		]
	},
	"prettier": "@vdemedes/prettier-config"
}
