| "use strict"; |
| Object.defineProperty(exports, "__esModule", { value: true }); |
| exports.statSync = exports.stat = exports.Settings = void 0; |
| const async = require("./providers/async"); |
| const sync = require("./providers/sync"); |
| const settings_1 = require("./settings"); |
| exports.Settings = settings_1.default; |
| function stat(path, optionsOrSettingsOrCallback, callback) { |
| if (typeof optionsOrSettingsOrCallback === 'function') { |
| async.read(path, getSettings(), optionsOrSettingsOrCallback); |
| return; |
| } |
| async.read(path, getSettings(optionsOrSettingsOrCallback), callback); |
| } |
| exports.stat = stat; |
| function statSync(path, optionsOrSettings) { |
| const settings = getSettings(optionsOrSettings); |
| return sync.read(path, settings); |
| } |
| exports.statSync = statSync; |
| function getSettings(settingsOrOptions = {}) { |
| if (settingsOrOptions instanceof settings_1.default) { |
| return settingsOrOptions; |
| } |
| return new settings_1.default(settingsOrOptions); |
| } |