UNPKG

@kubernetes-models/argo-cd

Version:
40 lines (39 loc) 2.8 kB
import { IComGithubArgoprojArgoCdV3PkgApisApplicationV1alpha1ApplicationSetNestedGenerator } from "./ApplicationSetNestedGenerator.js"; import { IComGithubArgoprojArgoCdV3PkgApisApplicationV1alpha1ApplicationSetTemplate } from "./ApplicationSetTemplate.js"; import { ModelData, Model } from "@kubernetes-models/base"; /** * MergeGenerator merges the output of two or more generators. Where the values for all specified merge keys are equal * between two sets of generated parameters, the parameter sets will be merged with the parameters from the latter * generator taking precedence. Parameter sets with merge keys not present in the base generator's params will be * ignored. * For example, if the first generator produced [{a: '1', b: '2'}, {c: '1', d: '1'}] and the second generator produced * [{'a': 'override'}], the united parameters for merge keys = ['a'] would be * [{a: 'override', b: '1'}, {c: '1', d: '1'}]. * * MergeGenerator supports template overriding. If a MergeGenerator is one of multiple top-level generators, its * template will be merged with the top-level generator before the parameters are applied. */ export interface IMergeGenerator { "generators": Array<IComGithubArgoprojArgoCdV3PkgApisApplicationV1alpha1ApplicationSetNestedGenerator>; "mergeKeys": Array<string>; "template"?: IComGithubArgoprojArgoCdV3PkgApisApplicationV1alpha1ApplicationSetTemplate; } /** * MergeGenerator merges the output of two or more generators. Where the values for all specified merge keys are equal * between two sets of generated parameters, the parameter sets will be merged with the parameters from the latter * generator taking precedence. Parameter sets with merge keys not present in the base generator's params will be * ignored. * For example, if the first generator produced [{a: '1', b: '2'}, {c: '1', d: '1'}] and the second generator produced * [{'a': 'override'}], the united parameters for merge keys = ['a'] would be * [{a: 'override', b: '1'}, {c: '1', d: '1'}]. * * MergeGenerator supports template overriding. If a MergeGenerator is one of multiple top-level generators, its * template will be merged with the top-level generator before the parameters are applied. */ export declare class MergeGenerator extends Model<IMergeGenerator> implements IMergeGenerator { "generators": Array<IComGithubArgoprojArgoCdV3PkgApisApplicationV1alpha1ApplicationSetNestedGenerator>; "mergeKeys": Array<string>; "template"?: IComGithubArgoprojArgoCdV3PkgApisApplicationV1alpha1ApplicationSetTemplate; constructor(data?: ModelData<IMergeGenerator>); } export type { IMergeGenerator as IComGithubArgoprojArgoCdV3PkgApisApplicationV1alpha1MergeGenerator, MergeGenerator as ComGithubArgoprojArgoCdV3PkgApisApplicationV1alpha1MergeGenerator };