pmcf
Version:
Poor mans configuration management
181 lines (180 loc) • 5.49 kB
text/typescript
export function extractFrom(object: any, typeDefinition?: any): any;
/**
*
* attributes: essential values
* properties: use defined values to support attribute value definitions
*/
export class Base {
static name: string;
static key: string;
static attributes: {
owner: {
type: string;
isKey: boolean;
writable: boolean;
mandatory: boolean;
collection: boolean;
constructor?: Function;
private?: boolean;
credential?: boolean;
persistent?: boolean;
depends?: string;
description?: string;
default?: any;
set?: Function;
get?: Function;
toInternal?: Function;
toExternal?: Function;
values?: Set<any>;
externalName?: string;
env?: string[] | string;
additionalValues?: object;
};
type: import("pacc").AttributeDefinition;
name: import("pacc").AttributeDefinition;
description: import("pacc").AttributeDefinition;
priority: import("pacc").AttributeDefinition;
directory: import("pacc").AttributeDefinition;
packaging: import("pacc").AttributeDefinition;
disabled: import("pacc").AttributeDefinition;
tags: import("pacc").AttributeDefinition;
};
static get typeName(): string;
static get typeDefinition(): typeof Base;
static get typeFileName(): string;
/**
*
* @param {Base} owner
* @param {object} [data]
*/
constructor(owner: Base, data?: object);
owner: Base;
description: any;
name: string;
extends: any[];
_tags: Set<any>;
_packaging: Set<any>;
_directory: any;
_finalize: any;
_properties: any;
ownerFor(attribute: any, data: any): any;
read(data: any, type?: any): void;
_applyExtends(): void;
named(name: any): void;
typeNamed(typeName: any, name: any): any;
addObject(object: any): any;
/**
* Walk the object graph in some directions and deliver seen nodes.
* @param {string[]} directions
* @return {Iterable<Base>}
*/
walkDirections(directions?: string[]): Iterable<Base>;
_walkDirections(directions: any, withThis: any, seen: any): Generator<any, void, any>;
forOwner(owner: any): any;
isNamed(name: any): boolean;
relativeName(name: any): any;
get typeName(): any;
/**
*
* @param {string} name
* @returns {any}
*/
extendedAttribute(name: string): any;
/**
* Retrive attribute values from an object.
* @param {Function} [filter]
* @return {Iterable<[string,any]>} values
*/
propertyIterator(filter?: Function): Iterable<[string, any]>;
/**
* Retrive attribute values from an object.
* @param {Function} [filter]
* @return {Object} values
*/
getProperties(filter?: Function): any;
get root(): any;
get location(): any;
get host(): any;
get network(): any;
get domain(): any;
get domains(): any;
get localDomains(): any;
get administratorEmail(): any;
get locales(): any;
get country(): any;
get timezone(): any;
set priority(value: number);
/**
* @return {number}
*/
get priority(): number;
_priority: number;
get smtp(): any;
/**
*
* @param {string} expression
* @param {object} options
* @returns {any}
*/
expression(expression: string, options: object): any;
get services(): any;
/**
*
* @param {any} filter
* @returns service with the highest priority
*/
findService(filter: any): any;
findServices(filter: any): any;
set directory(directory: any);
get directory(): any;
get fullName(): any;
get derivedPackaging(): any;
set packaging(value: any);
get packaging(): any;
get outputs(): Set<typeof import("npm-pkgbuild").DEBIAN | typeof import("npm-pkgbuild").ARCH | typeof import("npm-pkgbuild").OCI | typeof import("npm-pkgbuild").DOCKER>;
get packageData(): {
sources: any[];
outputs: Set<typeof import("npm-pkgbuild").DEBIAN | typeof import("npm-pkgbuild").ARCH | typeof import("npm-pkgbuild").OCI | typeof import("npm-pkgbuild").DOCKER>;
properties: {
name: string;
access: string;
dependencies: any;
groups: any[];
};
};
preparePackages(stagingDir: any): AsyncGenerator<never, void, unknown>;
get templateTransformers(): any[];
/**
*
* @param {*} entryProperties
* @param {*} directoryProperties
* @returns {AsyncIterable<ContentProvider>}
*/
templateContent(entryProperties: any, directoryProperties: any): AsyncIterable<ContentProvider>;
set tags(value: any);
get tags(): any;
get isTemplate(): any;
valueFor(name: any, at: any): any;
get properties(): any;
/**
*
* @param {string} name
* @returns {any}
*/
property(name: string): any;
/**
*
* @param {any} object
* @returns {any}
*/
expand(object: any): any;
finalize(action: any): void;
execFinalize(): void;
_execFinalize(): void;
traverse(visitor: any, ...args: any[]): Set<any>;
_traverse(visited: any, visitor: any, ...args: any[]): boolean;
error(...args: any[]): void;
info(...args: any[]): void;
toString(): string;
toJSON(): any;
}