hashi-vault-js
Version:
A node.js module to interact with the Hashicorp Vault API.
1,352 lines • 50.3 kB
TypeScript
/**
* @constructor
* @param {boolean} [params.https=false]
* @param {string} [params.cert]
* @param {string} [params.key]
* @param {string} [params.cacert]
* @param {string} [params.baseUrl]
* @param {string} [params.rootPath]
* @param {number} [params.timeout=1000]
* @param {boolean} [params.proxy=false]
* @param {string} [params.namespace]
*/
export default class Vault {
constructor(params: any);
/** @type {boolean} */
https: boolean;
/** @type {string} */
cert: string;
/** @type {string} */
key: string;
/** @type {string} */
cacert: string;
/** @type {string} */
baseUrl: string;
/** @type {string} */
rootPath: string;
/** @type {number} */
timeout: number;
/** @type {Object} */
proxy: Object;
/** @type {string} */
namespace: string;
/** @type {Object | boolean} */
agent: Object | boolean;
/** @type {Object} */
instance: Object;
/**
* @param {Object} [params]
* @returns {PromiseLike<Object>}
*/
healthCheck(params?: Object | undefined): PromiseLike<Object>;
/**
* @returns {PromiseLike<Object>}
*/
sealStatus(): PromiseLike<Object>;
/**
* @param {string} sudoToken
* @returns {PromiseLike<Object>}
*/
sysHostInfo(sudoToken: string): PromiseLike<Object>;
/**
* @param {string} sudoToken
* @param {string} token
* @param {string[]} paths
* @returns {PromiseLike<Object>}
*/
sysCapabilities(sudoToken: string, token: string, paths: string[]): PromiseLike<Object>;
/**
* @param {string} token
* @param {string[]} paths
* @returns {PromiseLike<Object>}
*/
sysCapabilitiesSelf(token: string, paths: string[]): PromiseLike<Object>;
/**
* @param {string} sudoToken
* @param {string} type
* @returns {PromiseLike<Object>}
*/
sysInternalCounters(sudoToken: string, type: string): PromiseLike<Object>;
/**
* @param {string} sudoToken
* @param {string} [format]
* @returns {PromiseLike<Object>}
*/
sysMetrics(sudoToken: string, format?: string | undefined): PromiseLike<Object>;
/**
* @param {string} sudoToken
* @returns {PromiseLike<Object>}
*/
sysSeal(sudoToken: string): PromiseLike<Object>;
/**
* @param {string} sudoToken
* @param {string} key
* @param {boolean} reset
* @param {boolean} migrate
* @returns {PromiseLike<Object>}
*/
sysUnseal(sudoToken: string, key: string, reset: boolean, migrate: boolean): PromiseLike<Object>;
/**
* @param {string} vaultToken
* @param {Object} [params]
* @param {string} [params.id]
* @param {string} [params.role_name]
* @param {string} [params.policies]
* @param {Object} [params.meta]
* @param {boolean} [params.no_narent=false]
* @param {boolean} [params.no_default_policy=false]
* @param {boolean} [params.renewable=true]
* @param {string} [params.ttl]
* @param {string} [params.type=service]
* @param {string} [params.explicit_max_ttl]
* @param {string} [params.display_name]
* @param {number} [params.num_uses]
* @param {string} [params.period]
* @param {string} [params.entity_alias]
* @returns {PromiseLike<Object>}
*/
createToken(vaultToken: string, params?: {
id?: string | undefined;
role_name?: string | undefined;
policies?: string | undefined;
meta?: Object | undefined;
no_narent?: boolean | undefined;
no_default_policy?: boolean | undefined;
renewable?: boolean | undefined;
ttl?: string | undefined;
type?: string | undefined;
explicit_max_ttl?: string | undefined;
display_name?: string | undefined;
num_uses?: number | undefined;
period?: string | undefined;
entity_alias?: string | undefined;
} | undefined): PromiseLike<Object>;
/**
* @param {string} vaultToken
* @param {string} clientToken
* @returns {PromiseLike<Object>}
*/
revokeToken(vaultToken: string, clientToken: string): PromiseLike<Object>;
/**
* @param {string} clientToken
* @returns {PromiseLike<Object>}
*/
revokeSelfToken(clientToken: string): PromiseLike<Object>;
/**
* @param {string} vaultToken
* @param {string} clientToken
* @returns {PromiseLike<Object>}
*/
lookupToken(vaultToken: string, clientToken: string): PromiseLike<Object>;
/**
* @param {string} clientToken
* @returns {PromiseLike<Object>}
*/
lookupSelfToken(clientToken: string): PromiseLike<Object>;
/**
* @param {string} vaultToken
* @param {string} clientToken
* @param {string} increment
* @returns {PromiseLike<Object>}
*/
renewToken(vaultToken: string, clientToken: string, increment: string): PromiseLike<Object>;
/**
* @param {string} clientToken
* @param {string} increment
* @returns {PromiseLike<Object>}
*/
renewSelfToken(clientToken: string, increment: string): PromiseLike<Object>;
/**
* @param {string} sudoToken
* @returns {PromiseLike<Object>}
*/
listAccessors(sudoToken: string): PromiseLike<Object>;
/**
* @param {string} vaultToken
* @param {string} accessor
* @returns {PromiseLike<Object>}
*/
lookupAccessor(vaultToken: string, accessor: string): PromiseLike<Object>;
/**
* @param {string} vaultToken
* @param {string} accessor
* @param {string} increment
* @returns {PromiseLike<Object>}
*/
renewAccessor(vaultToken: string, accessor: string, increment: string): PromiseLike<Object>;
/**
* @param {string} vaultToken
* @param {string} accessor
* @returns {PromiseLike<Object>}
*/
revokeAccessor(vaultToken: string, accessor: string): PromiseLike<Object>;
/**
* @param {string} username
* @param {string} password
* @param {string} [mount]
* @returns {Object}
*/
loginWithLdap(username: string, password: string, mount?: string | undefined): Object;
/**
* @param {string} token
* @param {string} username
* @param {string[]} policies
* @param {string} groups
* @param {string} [mount]
* @returns {PromiseLike<Object>}
*/
createLdapUser(token: string, username: string, policies: string[], groups: string, mount?: string | undefined): PromiseLike<Object>;
/**
* @param {string} token
* @param {string} username
* @param {string[]} policies
* @param {string} groups
* @param {string} [mount]
* @returns {PromiseLike<Object>}
*/
updateLdapUser(token: string, username: string, policies: string[], groups: string, mount?: string | undefined): PromiseLike<Object>;
/**
* @param {string} token
* @param {string} group
* @param {string[]} policies
* @param {string} [mount]
* @returns {PromiseLike<Object>}
*/
createLdapGroup(token: string, group: string, policies: string[], mount?: string | undefined): PromiseLike<Object>;
/**
* @param {string} token
* @param {string} group
* @param {string[]} policies
* @param {string} [mount]
* @returns {PromiseLike<Object>}
*/
updateLdapGroup(token: string, group: string, policies: string[], mount?: string | undefined): PromiseLike<Object>;
/**
* @param {string} token
* @param {string} group
* @param {string} [mount]
* @returns {PromiseLike<Object>}
*/
readLdapGroup(token: string, group: string, mount?: string | undefined): PromiseLike<Object>;
/**
* @param {string} token
* @param {string} username
* @param {string} [mount]
* @returns {PromiseLike<Object>}
*/
readLdapUser(token: string, username: string, mount?: string | undefined): PromiseLike<Object>;
/**
* @param {string} token
* @param {string} [mount]
* @returns {PromiseLike<Object>}
*/
listLdapUsers(token: string, mount?: string | undefined): PromiseLike<Object>;
/**
* @param {string} token
* @param {string} [mount]
* @returns {PromiseLike<Object>}
*/
listLdapGroups(token: string, mount?: string | undefined): PromiseLike<Object>;
/**
* @param {string} token
* @param {string} username
* @param {string} [mount]
* @returns {PromiseLike<Object>}
*/
deleteLdapUser(token: string, username: string, mount?: string | undefined): PromiseLike<Object>;
/**
* @param {string} token
* @param {string} group
* @param {string} [mount]
* @returns {PromiseLike<Object>}
*/
deleteLdapGroup(token: string, group: string, mount?: string | undefined): PromiseLike<Object>;
/**
* @param {string} token
* @param {string} [mount]
* @returns {PromiseLike<Object>}
*/
readLdapConfig(token: string, mount?: string | undefined): PromiseLike<Object>;
/**
* @param {string} token
* @param {string} [mount]
* @param {Object} [params]
* @param {string} params.url
* @param {boolean} params.case_sensitive_names
* @param {number} params.request_timeout
* @param {boolean} params.starttls
* @param {string} params.tls_min_version
* @param {string} params.tls_max_version
* @param {boolean} params.insecure_tls
* @param {string} params.certificate
* @param {string} params.client_tls_cert
* @param {string} params.client_tls_key
* @param {string} params.binddn
* @param {string} params.bindpass
* @param {string} params.userdn
* @param {string} params.userattr
* @param {boolean} params.discoverdn
* @param {boolean} params.deny_null_bind
* @param {string} params.upndomain
* @param {string} params.userfilter
* @param {boolean} params.anonymous_group_search
* @param {string} params.groupfilter
* @param {string} params.groupdn
* @param {string} params.groupattr
* @param {boolean} params.username_as_alias
* @param {number} params.token_ttl
* @param {number} params.token_max_ttl
* @param {string[]} params.token_policies
* @param {string[]} params.token_bound_cidrs
* @param {number} params.token_explicit_max_ttl
* @param {boolean} params.token_no_default_policy
* @param {number} params.token_num_uses
* @param {number} params.token_period
* @param {string} params.token_type
* @returns {PromiseLike<Object>}
*/
setLdapConfig(token: string, params?: {
url: string;
case_sensitive_names: boolean;
request_timeout: number;
starttls: boolean;
tls_min_version: string;
tls_max_version: string;
insecure_tls: boolean;
certificate: string;
client_tls_cert: string;
client_tls_key: string;
binddn: string;
bindpass: string;
userdn: string;
userattr: string;
discoverdn: boolean;
deny_null_bind: boolean;
upndomain: string;
userfilter: string;
anonymous_group_search: boolean;
groupfilter: string;
groupdn: string;
groupattr: string;
username_as_alias: boolean;
token_ttl: number;
token_max_ttl: number;
token_policies: string[];
token_bound_cidrs: string[];
token_explicit_max_ttl: number;
token_no_default_policy: boolean;
token_num_uses: number;
token_period: number;
token_type: string;
} | undefined, mount?: string | undefined): PromiseLike<Object>;
/**
* @param {string} [mount]
* @param {string} certName
* @returns {PromiseLike<Object>}
*/
loginWithCert(certName: string, mount?: string | undefined): PromiseLike<Object>;
/**
* @param {string} username
* @param {string} password
* @param {string} [mount]
* @returns {PromiseLike<Object>}
*/
loginWithUserpass(username: string, password: string, mount?: string | undefined): PromiseLike<Object>;
/**
* @param {string} token
* @param {string} username
* @param {string} password
* @param {string[]} policies
* @param {string} [mount]
* @returns {PromiseLike<Object>}
*/
createUserpassUser(token: string, username: string, password: string, policies: string[], mount?: string | undefined): PromiseLike<Object>;
/**
* @param {string} token
* @param {string} username
* @param {string} password
* @param {string[]} policies
* @param {string} [mount]
* @returns {PromiseLike<Object>}
*/
updateUserpassUser(token: string, username: string, password: string, policies: string[], mount?: string | undefined): PromiseLike<Object>;
/**
* @param {string} token
* @param {string} username
* @param {string} [mount]
* @returns {PromiseLike<Object>}
*/
readUserpassUser(token: string, username: string, mount?: string | undefined): PromiseLike<Object>;
/**
* @param {string} token
* @param {string} username
* @param {string} [mount]
* @returns {PromiseLike<Object>}
*/
deleteUserpassUser(token: string, username: string, mount?: string | undefined): PromiseLike<Object>;
/**
* @param {string} token
* @param {string} username
* @param {string} password
* @param {string} [mount]
* @returns {PromiseLike<Object>}
*/
updateUserpassPassword(token: string, username: string, password: string, mount?: string | undefined): PromiseLike<Object>;
/**
* @param {string} token
* @param {string} username
* @param {string[]} policies
* @param {string} [mount]
* @returns {PromiseLike<Object>}
*/
updateUserpassPolicies(token: string, username: string, policies: string[], mount?: string | undefined): PromiseLike<Object>;
/**
* @param {string} token
* @param {string} [mount]
* @returns {PromiseLike<Object>}
*/
listUserpassUsers(token: string, mount?: string | undefined): PromiseLike<Object>;
/**
* @param {string} role
* @param {string} jwt
* @param {string} [mount]
* @returns {Object}
*/
loginWithK8s(role: string, jwt: string, mount?: string | undefined): Object;
/**
* @param {string} token
* @param {Object} params
* @param {string} params.kubernetes_host
* @param {string} params.kubernetes_ca_cert
* @param {string} params.token_reviewer_jwt
* @param {Object} [params.pem_keys]
* @param {string} params.issuer
* @param {boolean} params.disable_iss_validation
* @param {boolean} params.disable_local_ca_jwt
* @param {string} [mount]
* @returns {PromiseLike<Object>}
*/
updateK8sConfig(token: string, params: {
kubernetes_host: string;
kubernetes_ca_cert: string;
token_reviewer_jwt: string;
pem_keys?: Object | undefined;
issuer: string;
disable_iss_validation: boolean;
disable_local_ca_jwt: boolean;
}, mount?: string | undefined): PromiseLike<Object>;
/**
* @param {string} token
* @param {string} [mount]
* @returns {Object}
*/
readK8sConfig(token: string, mount?: string | undefined): Object;
/**
* @param {string} token
* @param {string} role
* @param {Object} params
* @param {Object} [params.bound_service_account_names]
* @param {Object} [params.bound_service_account_namespaces]
* @param {string} params.audience
* @param {number | string} params.token_ttl
* @param {number | string} params.token_max_ttl
* @param {Object} [params.token_policies]
* @param {Object} [params.token_bound_cidrs]
* @param {number | string} params.token_explicit_max_ttl
* @param {boolean} params.token_no_default_policy
* @param {number} params.token_num_uses
* @param {number | string} params.token_period
* @param {string} params.token_type
* @param {string} [mount]
* @returns {Object}
*/
createK8sRole(token: string, role: string, params: {
bound_service_account_names?: Object | undefined;
bound_service_account_namespaces?: Object | undefined;
audience: string;
token_ttl: number | string;
token_max_ttl: number | string;
token_policies?: Object | undefined;
token_bound_cidrs?: Object | undefined;
token_explicit_max_ttl: number | string;
token_no_default_policy: boolean;
token_num_uses: number;
token_period: number | string;
token_type: string;
}, mount?: string | undefined): Object;
/**
* @param {string} token
* @param {string} role
* @param {string} [mount]
* @returns {Object}
*/
readK8sRole(token: string, role: string, mount?: string | undefined): Object;
/**
* @param {string} token
* @param {string} [mount]
* @returns {Object}
*/
listK8sRoles(token: string, mount?: string | undefined): Object;
/**
* @param {string} token
* @param {string} role
* @param {string} [mount]
* @returns {Object}
*/
deleteK8sRole(token: string, role: string, mount?: string | undefined): Object;
/**
* @param {string} roleId
* @param {string} secretId
* @param {string} [mount]
* @returns {Object}
*/
loginWithAppRole(roleId: string, secretId: string, mount?: string | undefined): Object;
/**
* @param {string} token
* @param {string} appRole
* @param {string} [metadata]
* @param {string} [mount]
* @returns {PromiseLike<Object>}
*/
generateAppRoleSecretId(token: string, appRole: string, metadata?: string | undefined, mount?: string | undefined): PromiseLike<Object>;
/**
* @param {string} token
* @param {string} appRole
* @param {string} secretId
* @param {string} [mount]
* @returns {PromiseLike<Object>}
*/
readAppRoleSecretId(token: string, appRole: string, secretId: string, mount?: string | undefined): PromiseLike<Object>;
/**
* @param {string} token
* @param {string} appRole
* @param {string} secretId
* @param {string} [mount]
* @returns {PromiseLike<Object>}
*/
destroyAppRoleSecretId(token: string, appRole: string, secretId: string, mount?: string | undefined): PromiseLike<Object>;
/**
* @param {string} format - certificate format either 'der' or 'pem'
* @param {string} [mount]
* @returns {PromiseLike<string>}
*/
readCACertificate(format: string, mount?: string | undefined): PromiseLike<string>;
/**
* @param {string} format - certificate format either 'der' or 'pem'
* @param {string} [mount]
* @returns {PromiseLike<string>}
*/
readPkiCrl(format: string, mount?: string | undefined): PromiseLike<string>;
/**
* @param {string} [mount]
* @returns {PromiseLike<string>}
*/
readCAChain(mount?: string | undefined): PromiseLike<string>;
/**
* @param {string} serial
* @param {string} [mount]
* @returns {PromiseLike<Object>}
*/
readCertificate(serial: string, mount?: string | undefined): PromiseLike<Object>;
/**
* @param {string} token
* @param {string} [mount]
* @returns {PromiseLike<Object>}
*/
listCertificates(token: string, mount?: string | undefined): PromiseLike<Object>;
/**
* @param {string} token
* @param {string} pemBundle
* @param {string} [mount]
* @returns {PromiseLike<Object>}
*/
setCACertificate(token: string, pemBundle: string, mount?: string | undefined): PromiseLike<Object>;
/**
* @param {string} token
* @param {string} [mount]
* @returns {PromiseLike<Object>}
*/
readCrlConfig(token: string, mount?: string | undefined): PromiseLike<Object>;
/**
* @param {string} token
* @param {string} [expiry]
* @param {boolean} [disable]
* @param {string} [mount]
* @returns {PromiseLike<Object>}
*/
setCrlConfig(token: string, expiry?: string | undefined, disable?: boolean | undefined, mount?: string | undefined): PromiseLike<Object>;
/**
* @param {string} token
* @param {string} [mount]
* @returns {PromiseLike<Object>}
*/
readPkiUrls(token: string, mount?: string | undefined): PromiseLike<Object>;
/**
* @param {string} token
* @param {string[]} [issuingCertificates]
* @param {string[]} [crlDistributionPoints]
* @param {string[]} [oscpServers]
* @param {string} [mount]
* @returns {PromiseLike<Object>}
*/
setPkiUrls(token: string, issuingCertificates?: string[] | undefined, crlDistributionPoints?: string[] | undefined, oscpServers?: string[] | undefined, mount?: string | undefined): PromiseLike<Object>;
/**
* @param {string} token
* @param {string} [mount]
* @returns {PromiseLike<Object>}
*/
rotatePkiCrl(token: string, mount?: string | undefined): PromiseLike<Object>;
/**
* @param {string} sudoToken
* @param {Object} params
* @param {string} params.type - root CA type either 'internal' or 'exported'
* @param {string} params.commonName
* @param {string} params.altNames
* @param {string} params.ipSans
* @param {string} params.uriSans
* @param {string} params.otherSans
* @param {string} params.ttl
* @param {string} params.format - certificate format either 'der', 'pem' or 'pem_bundle'
* @param {string} params.pkFormat - private key format either 'der' or 'pkcs8'
* @param {string} params.keyType - key type either 'rsa' or 'ec'
* @param {number} params.keyBits
* @param {boolean} params.excludeCnFromSans
* @param {number} params.maxPathLength
* @param {string} params.permittedDnsDomains
* @param {string} params.ou
* @param {string} params.organization
* @param {string} params.country
* @param {string} params.locality
* @param {string} params.province
* @param {string} params.streetAddress
* @param {string} params.postalCode
* @param {string} params.serialNumber
* @param {string} [mount]
* @returns {PromiseLike<string>}
*/
generateRootCA(sudoToken: string, params: {
type: string;
commonName: string;
altNames: string;
ipSans: string;
uriSans: string;
otherSans: string;
ttl: string;
format: string;
pkFormat: string;
keyType: string;
keyBits: number;
excludeCnFromSans: boolean;
maxPathLength: number;
permittedDnsDomains: string;
ou: string;
organization: string;
country: string;
locality: string;
province: string;
streetAddress: string;
postalCode: string;
serialNumber: string;
}, mount?: string | undefined): PromiseLike<string>;
/**
* @param {string} sudoToken
* @param {string} [mount]
* @returns {PromiseLike<Object>}
*/
deleteRootCA(sudoToken: string, mount?: string | undefined): PromiseLike<Object>;
/**
* @param {string} token
* @param {string} params.type - intermediate CA type either 'internal' or 'exported'
* @param {Object} params
* @param {string} params.commonName
* @param {string} [params.altNames]
* @param {string} [params.ipSans]
* @param {string} [params.uriSans]
* @param {string} [params.otherSans]
* @param {string} [params.format] - certificate format either 'der', 'pem' or 'pem_bundle'
* @param {string} [params.pkFormat] - private key format either 'der' or 'pkcs8'
* @param {string} [params.keyType] - key type either 'rsa' or 'ec'
* @param {number} [params.keyBits]
* @param {boolean} [params.excludeCnFromSans]
* @param {string} [params.ou]
* @param {string} [params.organization]
* @param {string} [params.country]
* @param {string} [params.locality]
* @param {string} [params.province]
* @param {string} [params.streetAddress]
* @param {string} [params.postalCode]
* @param {string} [params.serialNumber]
* @param {string} [mount]
* @returns {PromiseLike<string>}
*/
genIntermediateCA(token: string, params: {
commonName: string;
altNames?: string | undefined;
ipSans?: string | undefined;
uriSans?: string | undefined;
otherSans?: string | undefined;
format?: string | undefined;
pkFormat?: string | undefined;
keyType?: string | undefined;
keyBits?: number | undefined;
excludeCnFromSans?: boolean | undefined;
ou?: string | undefined;
organization?: string | undefined;
country?: string | undefined;
locality?: string | undefined;
province?: string | undefined;
streetAddress?: string | undefined;
postalCode?: string | undefined;
serialNumber?: string | undefined;
}, mount?: string | undefined): PromiseLike<string>;
/**
* @param {string} sudoToken
* @param {Object} params
* @param {string} params.csr
* @param {string} params.commonName
* @param {string} [params.altNames]
* @param {string} [params.ipSans]
* @param {string} [params.uriSans]
* @param {string} [params.otherSans]
* @param {string} [params.ttl]
* @param {string} [params.format] - certificate format either 'der', 'pem' or 'pem_bundle'
* @param {number} [params.maxPathLength]
* @param {boolean} [params.excludeCnFromSans]
* @param {boolean} [params.useCsrValues]
* @param {string} [params.permittedDnsDomains]
* @param {string} [params.ou]
* @param {string} [params.organization]
* @param {string} [params.country]
* @param {string} [params.locality]
* @param {string} [params.province]
* @param {string} [params.streetAddress]
* @param {string} [params.postalCode]
* @param {string} [params.serialNumber]
* @param {string} [mount]
* @returns {PromiseLike<string>}
*/
signIntermediateCA(sudoToken: string, params: {
csr: string;
commonName: string;
altNames?: string | undefined;
ipSans?: string | undefined;
uriSans?: string | undefined;
otherSans?: string | undefined;
ttl?: string | undefined;
format?: string | undefined;
maxPathLength?: number | undefined;
excludeCnFromSans?: boolean | undefined;
useCsrValues?: boolean | undefined;
permittedDnsDomains?: string | undefined;
ou?: string | undefined;
organization?: string | undefined;
country?: string | undefined;
locality?: string | undefined;
province?: string | undefined;
streetAddress?: string | undefined;
postalCode?: string | undefined;
serialNumber?: string | undefined;
}, mount?: string | undefined): PromiseLike<string>;
/**
* @param {string} token
* @param {string} certificate
* @param {string} [mount]
* @returns {PromiseLike<Object>}
*/
setIntermediateCA(token: string, certificate: string, mount?: string | undefined): PromiseLike<Object>;
/**
* @param {string} token
* @param {Object} params
* @param {string} params.role - intermediate CA role type either 'internal' or 'exported'
* @param {string} params.commonName
* @param {string} [params.altNames]
* @param {string} [params.ipSans]
* @param {string} [params.uriSans]
* @param {string} [params.otherSans]
* @param {string} [params.ttl]
* @param {string} params.format - certificate format either 'der', 'pem' or 'pem_bundle'
* @param {string} [params.pkFormat] - private key format either 'der' or 'pkcs8'
* @param {boolean} [params.excludeCnFromSans]
* @param {string} [mount]
* @returns {PromiseLike<string>}
*/
genPkiCertificate(token: string, params: {
role: string;
commonName: string;
altNames?: string | undefined;
ipSans?: string | undefined;
uriSans?: string | undefined;
otherSans?: string | undefined;
ttl?: string | undefined;
format: string;
pkFormat?: string | undefined;
excludeCnFromSans?: boolean | undefined;
}, mount?: string | undefined): PromiseLike<string>;
/**
* @param {string} token
* @param {string} serialNumber
* @param {string} [mount]
* @returns {PromiseLike<Object>}
*/
revokePkiCertificate(token: string, serialNumber: string, mount?: string | undefined): PromiseLike<Object>;
/**
* @param {string} token
* @param {Object} params
* @param {string} params.name
* @param {string} [params.ttl]
* @param {string} [params.maxTtl]
* @param {boolean} [params.allowLocalhost]
* @param {string[]} [params.allowedDomains]
* @param {boolean} [params.allowedDomainsTemplate]
* @param {boolean} [params.allowBareDomains]
* @param {boolean} [params.allowSubdomains]
* @param {boolean} [params.allowGlobDomains]
* @param {boolean} [params.allowAnyName]
* @param {boolean} [params.enforceHostnames]
* @param {string} [params.allowIpSans]
* @param {string} [params.allowedUriSans]
* @param {string} [params.allowedOtherSans]
* @param {boolean} [params.serverFlag]
* @param {boolean} [params.clientFlag]
* @param {boolean} [params.codeSigningFlag]
* @param {boolean} [params.emailProtectionFlag]
* @param {string} [params.keyType] - key type either 'rsa' or 'ec'
* @param {number} [params.keyBits]
* @param {string[]} [params.keyUsage]
* @param {string[]} [params.externalKeyUsage]
* @param {string} [params.extKeyUsageOids]
* @param {boolean} [params.useCsrCommonName]
* @param {boolean} [params.useCsrSans]
* @param {string} [params.ou]
* @param {string} [params.organization]
* @param {string} [params.country]
* @param {string} [params.locality]
* @param {string} [params.province]
* @param {string} [params.streetAddress]
* @param {string} [params.postalCode]
* @param {string} [params.serialNumber]
* @param {boolean} [params.generateLease]
* @param {boolean} [params.noStore]
* @param {boolean} [params.requireCn]
* @param {string[]} [params.policyIdentifiers]
* @param {boolean} [params.basicConstraintsValidForNonCa]
* @param {string} [params.notBeforeDuration]
* @param {string} [mount]
* @returns {PromiseLike<Object>}
*/
createPkiRole(token: string, params: {
name: string;
ttl?: string | undefined;
maxTtl?: string | undefined;
allowLocalhost?: boolean | undefined;
allowedDomains?: string[] | undefined;
allowedDomainsTemplate?: boolean | undefined;
allowBareDomains?: boolean | undefined;
allowSubdomains?: boolean | undefined;
allowGlobDomains?: boolean | undefined;
allowAnyName?: boolean | undefined;
enforceHostnames?: boolean | undefined;
allowIpSans?: string | undefined;
allowedUriSans?: string | undefined;
allowedOtherSans?: string | undefined;
serverFlag?: boolean | undefined;
clientFlag?: boolean | undefined;
codeSigningFlag?: boolean | undefined;
emailProtectionFlag?: boolean | undefined;
keyType?: string | undefined;
keyBits?: number | undefined;
keyUsage?: string[] | undefined;
externalKeyUsage?: string[] | undefined;
extKeyUsageOids?: string | undefined;
useCsrCommonName?: boolean | undefined;
useCsrSans?: boolean | undefined;
ou?: string | undefined;
organization?: string | undefined;
country?: string | undefined;
locality?: string | undefined;
province?: string | undefined;
streetAddress?: string | undefined;
postalCode?: string | undefined;
serialNumber?: string | undefined;
generateLease?: boolean | undefined;
noStore?: boolean | undefined;
requireCn?: boolean | undefined;
policyIdentifiers?: string[] | undefined;
basicConstraintsValidForNonCa?: boolean | undefined;
notBeforeDuration?: string | undefined;
}, mount?: string | undefined): PromiseLike<Object>;
/**
* @param {string} token
* @param {Object} params
* @param {string} params.name
* @param {string} [params.ttl]
* @param {string} [params.maxTtl]
* @param {boolean} [params.allowLocalhost]
* @param {string[]} [params.allowedDomains]
* @param {boolean} [params.allowedDomainsTemplate]
* @param {boolean} [params.allowBareDomains]
* @param {boolean} [params.allowSubdomains]
* @param {boolean} [params.allowGlobDomains]
* @param {boolean} [params.allowAnyName]
* @param {boolean} [params.enforceHostnames]
* @param {string} [params.allowIpSans]
* @param {string} [params.allowedUriSans]
* @param {string} [params.allowedOtherSans]
* @param {boolean} [params.serverFlag]
* @param {boolean} [params.clientFlag]
* @param {boolean} [params.codeSigningFlag]
* @param {boolean} [params.emailProtectionFlag]
* @param {string} [params.keyType] - The type of key to generate. Can be either "rsa" or "ec".
* @param {number} [params.keyBits]
* @param {string[]} [params.keyUsage]
* @param {string[]} [params.externalKeyUsage]
* @param {string} [params.extKeyUsageOids]
* @param {boolean} [params.useCsrCommonName]
* @param {boolean} [params.useCsrSans]
* @param {string} [params.ou]
* @param {string} [params.organization]
* @param {string} [params.country]
* @param {string} [params.locality]
* @param {string} [params.province]
* @param {string} [params.streetAddress]
* @param {string} [params.postalCode]
* @param {string} [params.serialNumber]
* @param {boolean} [params.generateLease]
* @param {boolean} [params.noStore]
* @param {boolean} [params.requireCn]
* @param {string[]} [params.policyIdentifiers]
* @param {boolean} [params.basicConstraintsValidForNonCa]
* @param {string} [params.notBeforeDuration]
* @param {string} [mount]
* @returns {PromiseLike<Object>}
*/
updatePkiRole(token: string, params: {
name: string;
ttl?: string | undefined;
maxTtl?: string | undefined;
allowLocalhost?: boolean | undefined;
allowedDomains?: string[] | undefined;
allowedDomainsTemplate?: boolean | undefined;
allowBareDomains?: boolean | undefined;
allowSubdomains?: boolean | undefined;
allowGlobDomains?: boolean | undefined;
allowAnyName?: boolean | undefined;
enforceHostnames?: boolean | undefined;
allowIpSans?: string | undefined;
allowedUriSans?: string | undefined;
allowedOtherSans?: string | undefined;
serverFlag?: boolean | undefined;
clientFlag?: boolean | undefined;
codeSigningFlag?: boolean | undefined;
emailProtectionFlag?: boolean | undefined;
keyType?: string | undefined;
keyBits?: number | undefined;
keyUsage?: string[] | undefined;
externalKeyUsage?: string[] | undefined;
extKeyUsageOids?: string | undefined;
useCsrCommonName?: boolean | undefined;
useCsrSans?: boolean | undefined;
ou?: string | undefined;
organization?: string | undefined;
country?: string | undefined;
locality?: string | undefined;
province?: string | undefined;
streetAddress?: string | undefined;
postalCode?: string | undefined;
serialNumber?: string | undefined;
generateLease?: boolean | undefined;
noStore?: boolean | undefined;
requireCn?: boolean | undefined;
policyIdentifiers?: string[] | undefined;
basicConstraintsValidForNonCa?: boolean | undefined;
notBeforeDuration?: string | undefined;
}, mount?: string | undefined): PromiseLike<Object>;
/**
* @param {string} token
* @param {string} name
* @param {string} [mount]
* @returns {PromiseLike<Object>}
*/
readPkiRole(token: string, name: string, mount?: string | undefined): PromiseLike<Object>;
/**
* @param {string} token
* @param {string} [mount]
* @returns {PromiseLike<Object>}
*/
listPkiRoles(token: string, mount?: string | undefined): PromiseLike<Object>;
/**
* @param {string} token
* @param {string} name
* @param {string} [mount]
* @returns {PromiseLike<Object>}
*/
deletePkiRole(token: string, name: string, mount?: string | undefined): PromiseLike<Object>;
/**
* @param {string} token
* @param {Object} params
* @param {number} [params.ttl]
* @param {number} [params.max_ttl]
* @param {string} [params.password_policy]
* @param {string} [params.url]
* @param {string} [params.request_timeout]
* @param {boolean} [params.starttls]
* @param {boolean} [params.insecure_tls]
* @param {string} [params.certificate]
* @param {string} params.binddn
* @param {string} params.bindpass
* @param {string} [params.userdn]
* @param {string} [params.upndomain]
* @param {string} [params.last_rotation_tolerance]
* @param {string} [mount]
* @returns {PromiseLike<Object>}
*/
setADConfig(token: string, params: {
ttl?: number | undefined;
max_ttl?: number | undefined;
password_policy?: string | undefined;
url?: string | undefined;
request_timeout?: string | undefined;
starttls?: boolean | undefined;
insecure_tls?: boolean | undefined;
certificate?: string | undefined;
binddn: string;
bindpass: string;
userdn?: string | undefined;
upndomain?: string | undefined;
last_rotation_tolerance?: string | undefined;
}, mount?: string | undefined): PromiseLike<Object>;
/**
* @param {string} token
* @param {Object} params
* @param {number} [params.ttl]
* @param {number} [params.max_ttl]
* @param {string} [params.password_policy]
* @param {string} [params.url]
* @param {string} [params.request_timeout]
* @param {boolean} [params.starttls]
* @param {boolean} [params.insecure_tls]
* @param {string} [params.certificate]
* @param {string} params.binddn
* @param {string} params.bindpass
* @param {string} [params.userdn]
* @param {string} [params.upndomain]
* @param {string} [params.last_rotation_tolerance]
* @param {string} [mount]
* @returns {PromiseLike<Object>}
*/
updateADConfig(token: string, params: {
ttl?: number | undefined;
max_ttl?: number | undefined;
password_policy?: string | undefined;
url?: string | undefined;
request_timeout?: string | undefined;
starttls?: boolean | undefined;
insecure_tls?: boolean | undefined;
certificate?: string | undefined;
binddn: string;
bindpass: string;
userdn?: string | undefined;
upndomain?: string | undefined;
last_rotation_tolerance?: string | undefined;
}, mount?: string | undefined): PromiseLike<Object>;
/**
* @param {string} token
* @param {string} [mount]
* @returns {PromiseLike<Object>}
*/
readADConfig(token: string, mount?: string | undefined): PromiseLike<Object>;
/**
* @param {string} token
* @param {string} [mount]
* @returns {PromiseLike<Object>}
*/
deleteADConfig(token: string, mount?: string | undefined): PromiseLike<Object>;
/**
* @param {string} token
* @param {string} [mount]
* @returns {PromiseLike<Object>}
*/
listADRoles(token: string, mount?: string | undefined): PromiseLike<Object>;
/**
* @param {string} token
* @param {Object} params
* @param {string} params.name
* @param {string} params.service_account_name
* @param {string} [params.ttl]
* @param {string} [mount]
* @returns {PromiseLike<Object>}
*/
createADRole(token: string, params: {
name: string;
service_account_name: string;
ttl?: string | undefined;
}, mount?: string | undefined): PromiseLike<Object>;
/**
* @param {string} token
* @param {Object} params
* @param {string} params.name
* @param {string} params.service_account_name
* @param {string} [params.ttl]
* @param {string} [mount]
* @returns {PromiseLike<Object>}
*/
updateADRole(token: string, params: {
name: string;
service_account_name: string;
ttl?: string | undefined;
}, mount?: string | undefined): PromiseLike<Object>;
/**
* @param {string} token
* @param {string} roleName
* @param {string} [mount]
* @returns {PromiseLike<Object>}
*/
readADRole(token: string, roleName: string, mount?: string | undefined): PromiseLike<Object>;
/**
* @param {string} token
* @param {string} roleName
* @param {string} [mount]
* @returns {PromiseLike<Object>}
*/
deleteADRole(token: string, roleName: string, mount?: string | undefined): PromiseLike<Object>;
/**
* @param {string} token
* @param {string} roleName
* @param {string} [mount]
* @returns {PromiseLike<Object>}
*/
getADRoleCred(token: string, roleName: string, mount?: string | undefined): PromiseLike<Object>;
/**
* @param {string} token
* @param {string} roleName
* @param {string} [mount]
* @returns {PromiseLike<Object>}
*/
rotateADRoleCred(token: string, roleName: string, mount?: string | undefined): PromiseLike<Object>;
/**
* @param {string} token
* @param {string} [mount]
* @returns {PromiseLike<Object>}
*/
listADLibraries(token: string, mount?: string | undefined): PromiseLike<Object>;
/**
* @param {string} token
* @param {string} setName
* @param {string} [mount]
* @returns {PromiseLike<Object>}
*/
readADLibrary(token: string, setName: string, mount?: string | undefined): PromiseLike<Object>;
/**
* @param {string} token
* @param {Object} params
* @param {string} params.name
* @param {string[]} params.service_account_names
* @param {string} [params.ttl]
* @param {string} [params.max_ttl]
* @param {boolean} [params.disable_check_in_enforcement]
* @param {string} [mount]
* @returns {PromiseLike<Object>}
*/
createADLibrary(token: string, params: {
name: string;
service_account_names: string[];
ttl?: string | undefined;
max_ttl?: string | undefined;
disable_check_in_enforcement?: boolean | undefined;
}, mount?: string | undefined): PromiseLike<Object>;
/**
* @param {string} token
* @param {Object} params
* @param {string} params.name
* @param {string[]} params.service_account_names
* @param {string} [params.ttl]
* @param {string} [params.max_ttl]
* @param {boolean} [params.disable_check_in_enforcement]
* @param {string} [mount]
* @returns {PromiseLike<Object>}
*/
updateADLibrary(token: string, params: {
name: string;
service_account_names: string[];
ttl?: string | undefined;
max_ttl?: string | undefined;
disable_check_in_enforcement?: boolean | undefined;
}, mount?: string | undefined): PromiseLike<Object>;
/**
* @param {string} token
* @param {string} setName
* @param {string} [mount]
* @returns {PromiseLike<Object>}
*/
deleteADLibrary(token: string, setName: string, mount?: string | undefined): PromiseLike<Object>;
/**
* @param {string} token
* @param {Object} params
* @param {string} params.name
* @param {string} [params.ttl]
* @param {string} [mount]
* @returns {PromiseLike<Object>}
*/
checkADCredOut(token: string, params: {
name: string;
ttl?: string | undefined;
}, mount?: string | undefined): PromiseLike<Object>;
/**
* @param {string} token
* @param {Object} params
* @param {string} params.name
* @param {string[]} [params.service_account_names]
* @param {boolean} [forceMode]
* @param {string} [mount]
* @returns {PromiseLike<Object>}
*/
checkADCredIn(token: string, params: {
name: string;
service_account_names?: string[] | undefined;
}, forceMode?: boolean | undefined, mount?: string | undefined): PromiseLike<Object>;
/**
* @param {string} token
* @param {string} setName
* @param {string} [mount]
* @returns {PromiseLike<Object>}
*/
getADCredSatus(token: string, setName: string, mount?: string | undefined): PromiseLike<Object>;
/**
* @param {string} token
* @param {Object} data
* @param {string} [mount]
* @returns {PromiseLike<Object>}
*/
updateKVEngineConfig(token: string, data: Object, mount?: string | undefined): PromiseLike<Object>;
/**
* @param {string} token
* @param {string} [mount]
* @returns {PromiseLike<Object>}
*/
readKVEngineConfig(token: string, mount?: string | undefined): PromiseLike<Object>;
/**
* @param {string} token
* @param {string} name
* @param {Object} secrets
* @param {string} [mount]
* @returns {PromiseLike<Object>}
*/
createKVSecret(token: string, name: string, secrets: Object, mount?: string | undefined): PromiseLike<Object>;
/**
* @param {string} token
* @param {string} name
* @param {Object} secrets
* @param {number} version
* @param {string} [mount]
* @returns {PromiseLike<Object>}
*/
updateKVSecret(token: string, name: string, secrets: Object, version: number, mount?: string | undefined): PromiseLike<Object>;
/**
* @param {string} token
* @param {string} name
* @param {number} [version]
* @param {string} [mount]
* @returns {PromiseLike<Object>}
*/
readKVSecret(token: string, name: string, version?: number | undefined, mount?: string | undefined): PromiseLike<Object>;
/**
* @param {string} token
* @param {string} name
* @param {string} [mount]
* @returns {PromiseLike<Object>}
*/
deleteLatestVerKVSecret(token: string, name: string, mount?: string | undefined): PromiseLike<Object>;
/**
* @param {string} token
* @param {string} name
* @param {number[]} versions
* @param {string} [mount]
* @returns {PromiseLike<Object>}
*/
deleteVersionsKVSecret(token: string, name: string, versions: number[], mount?: string | undefined): PromiseLike<Object>;
/**
* @param {string} token
* @param {string} name
* @param {number[]} versions
* @param {string} [mount]
* @returns {PromiseLike<Object>}
*/
undeleteVersionsKVSecret(token: string, name: string, versions: number[], mount?: string | undefined): PromiseLike<Object>;
/**
* @param {string} token
* @param {string} name
* @param {number[]} versions
* @param {string} [mount]
* @returns {PromiseLike<Object>}
*/
destroyVersionsKVSecret(token: string, name: string, versions: number[], mount?: string | undefined): PromiseLike<Object>;
/**
* @param {string} token
* @param {string} name
* @param {string} [mount]
* @returns {PromiseLike<Object>}
*/
eliminateKVSecret(token: string, name: string, mount?: string | undefined): PromiseLike<Object>;
/**
* @param {string} token
* @param {string} [folder]
* @param {string} [mount]
* @returns {PromiseLike<Object>}
*/
listKVSecrets(token: string, folder?: string | undefined, mount?: string | undefined): PromiseLike<Object>;
/**
* @param {string} token
* @param {string} [path]
* @param {string} [mount]
* @returns {PromiseLike<Object>}
*/
readKVSecretMeta(token: string, path?: string | undefined, mount?: string | undefined): PromiseLike<Object>;
/**
* @param {string} token
* @param {string} path
* @param {string} metadata
* @param {string} [mount]
* @returns {PromiseLike<Object>}
*/
createKVSecretMeta(token: string, path: string, metadata: string, mount?: string | undefined): PromiseLike<Object>;
/**
* @param {string} token
* @param {string} path
* @param {string} metadata
* @param {string} [mount]
* @returns {PromiseLike<Object>}
*/
updateKVSecretMeta(token: string, path: string, metadata: string, mount?: string | undefined): PromiseLike<Object>;
/**
* @param {string} token
* @param {string} name
* @param {Object} params
* @param {boolean} params.generate
* @param {boolean} [params.exported] - whether the key is exportable as QR code
* @param {number} [params.key_size=20]
* @param {string} [params.key_url]
* @param {string} [params.key]
* @param {string} [params.issuer] - key issuing entity
* @param {string} [params.account_name]
* @param {number} [params.period=30] - length of time for the counter on the code calculation
* @param {string} [params.algorithm=sha1] - code generator algorithm, either "SHA1", "SHA256", or "SHA512"
* @param {number} [params.digits] - number of code digits, either 6 or 8
* @param {number} [params.skew=1] - number of delay periods valid for code validation, either 0 or 1
* @param {number} [params.gr_size=200] - pixel size of the QR code image
* @param {string} [mount]
* @returns {PromiseLike<Object>}
*/
createTOTPKey(token: string, name: string, params: {
generate: boolean;
exported?: boolean | undefined;
key_size?: number | undefined;
key_url?: string | undefined;
key?: string | undefined;
issuer?: string | undefined;
account_name?: string | undefined;
period?: number | undefined;
algorithm?: string | undefined;
digits?: number | undefined;
skew?: number | undefined;
gr_size?: number | undefined;
}, mount?: strin