export interface ISecretGroup { /** * the insatnce id. This should be a random id, except for default */ id: string; data: { name: string; description: string; /** * the key of the secretgroup like CI_RUNNER_TOKEN */ key: string; /** * the priority of the secretgroup * will be used to determine which secretgroup will be used * when there are multiple secretgroups with the same key */ priority?: number; /** * any tags that can be used to filter the secretgroup * can be used for putting secrets into projects */ tags: { key: string; value: string; }[]; /** * the values for this secretGroup */ environments: { [key: string]: { value: string; /** * can be used to update the value */ updateToken?: string; /** * the linux timestamp of the last update */ lastUpdated: number; history: { timestamp: string; value: string; }[]; }; }; }; } export interface ISecretBundle { id: string; data: { name: string; description: string; /** * You can add specific secret groups using this */ includedSecretGroupIds: string[]; /** * You can add specific tags using this */ includedTags: { key: string; value: string; }[]; /** * authrozations select a specific environment of a config bundle */ authorizations: Array<{ secretAccessKey: string; environment: string; }>; }; }