couchbase-index-manager
Version:
Manage Couchbase indexes during the CI/CD process
37 lines (36 loc) • 967 B
TypeScript
import { Logger } from '../options';
import { IndexDefinition } from './index-definition';
import { NodeMap } from './node-map';
/**
* Loads index definitions from disk or stdin
*/
export declare class DefinitionLoader {
private logger;
constructor(logger?: Logger);
/**
* Loads definitions from disk
*/
loadDefinitions(paths: string[]): Promise<{
definitions: IndexDefinition[];
nodeMap: NodeMap;
}>;
/**
* Loads index definitions from a file
*/
private loadDefinition;
/**
* @private
* Loads index definitions from stdin
*/
private loadFromStdIn;
/**
* Processes a definition and adds to the current definitions or
* applies overrides to the matching definition
*/
private processConfiguration;
/**
* Validates a definition based on its type, throwing an exception
* if there is a problem.
*/
private validateConfiguration;
}