"use strict";
/**
 * @fileoverview Required Uniswap V3 constants.
 */
var __importDefault = (this && this.__importDefault) || function (mod) {
    return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.MAX_SQRT_RATIO = exports.MIN_SQRT_RATIO = exports.MAX_TICK = exports.MIN_TICK = exports.MaxUint256 = exports.Q192 = exports.Q96 = exports.Q32 = exports.TWO = exports.ONE = exports.ZERO = exports.NEGATIVE_ONE = exports.RESOLUTION = void 0;
var jsbi_1 = __importDefault(require("jsbi"));
/** @const {number} RESOLUTION fixed point resolution  */
exports.RESOLUTION = jsbi_1.default.BigInt(96);
// constants used internally but not expected to be used externally
exports.NEGATIVE_ONE = jsbi_1.default.BigInt(-1);
exports.ZERO = jsbi_1.default.BigInt(0);
exports.ONE = jsbi_1.default.BigInt(1);
exports.TWO = jsbi_1.default.BigInt(2);
// used in liquidity amount math
exports.Q32 = jsbi_1.default.exponentiate(jsbi_1.default.BigInt(2), jsbi_1.default.BigInt(32));
exports.Q96 = jsbi_1.default.exponentiate(jsbi_1.default.BigInt(2), jsbi_1.default.BigInt(96));
exports.Q192 = jsbi_1.default.exponentiate(exports.Q96, jsbi_1.default.BigInt(2));
exports.MaxUint256 = jsbi_1.default.BigInt('0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff');
/**
 * The minimum tick that can be used on any pool.
 */
exports.MIN_TICK = -887272;
/**
 * The maximum tick that can be used on any pool.
 */
exports.MAX_TICK = -exports.MIN_TICK;
/**
 * The sqrt ratio corresponding to the minimum tick that could be used on any pool.
 */
exports.MIN_SQRT_RATIO = jsbi_1.default.BigInt('4295128739');
/**
 * The sqrt ratio corresponding to the maximum tick that could be used on any pool.
 */
exports.MAX_SQRT_RATIO = jsbi_1.default.BigInt('1461446703485210103287273052203988822378723970342');
//# sourceMappingURL=constants.js.map