/** * @athenna/config * * (c) João Lenon * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. */ import { File, ObjectBuilder } from '@athenna/common'; export declare class Rc { static file: File; static content: ObjectBuilder; /** * Reload the Rc file and content. Useful when * changes has been made in the Rc file by external * tools. */ static reload(): Promise; /** * Set the RC file that the Rc class should work with. */ static setFile(path?: string): Promise; /** * Set or subscribe a KEY:VALUE property in some property of the RC configuration file. * You can also pass any value as a second parameter to set multiple properties at once. * * @example * ```ts * this.rc.setTo('commands', 'test', '#app/Console/Commands/TestCommand') * ``` * Or: * @example * ```ts * this.rc.setTo('commands', { test: '#app/Console/Commands/TestCommand' }) * ``` */ static setTo(rcKey: string, key: string | any, value?: any): typeof Rc; /** * Push a new value in some property of the RC configuration file. * * @example * ```ts * this.rc.pushTo('providers', '#providers/TestProvider') * ``` */ static pushTo(rcKey: string, value: any): typeof Rc; /** * Save the new content in the Rc file. */ static save(): Promise; /** * Parse the object value to JSON string. */ private static toStringJson; }