UNPKG

@rockcarver/frodo-lib

Version:

A library to manage ForgeRock Identity Cloud tenants, ForgeOps deployments, and classic deployments.

315 lines 13.9 kB
import { type Saml2ProiderLocation, type Saml2ProviderSkeleton, type Saml2ProviderStub } from '../api/Saml2Api'; import { type ScriptSkeleton } from '../api/ScriptApi'; import { State } from '../shared/State'; import { type ExportMetaData } from './OpsTypes'; export type Saml2 = { /** * Read all SAML2 entity provider stubs * @returns {Promise<Saml2ProviderStub[]>} a promise that resolves to an array of saml2 entity stubs */ readSaml2ProviderStubs(): Promise<Saml2ProviderStub[]>; /** * * @param {string} entityId Provider entity id * @returns {Promise<Saml2ProviderStub>} Promise resolving to a Saml2ExportInterface object. */ readSaml2ProviderStub(entityId: string): Promise<Saml2ProviderStub>; /** * Export a single entity provider. The response can be saved to file as is. * @param {string} entityId Provider entity id * @returns {Promise<Saml2ProviderSkeleton>} Promise resolving to a Saml2ExportInterface object. */ readSaml2Provider(entityId: string): Promise<Saml2ProviderSkeleton>; /** * Create a SAML2 entity provider * @param {Saml2ProiderLocation} location 'hosted' or 'remote' * @param {Saml2ProviderSkeleton} providerData Object representing a SAML entity provider * @param {string} metaData Base64-encoded metadata XML. Only required for remote providers * @returns {Promise<Saml2ProviderSkeleton>} a promise that resolves to a saml2 entity provider object */ createSaml2Provider(location: Saml2ProiderLocation, providerData: Saml2ProviderSkeleton, metaData: string): Promise<Saml2ProviderSkeleton>; /** * Update SAML2 entity provider * @param {Saml2ProiderLocation} location Entity provider location (hosted or remote) * @param {string} entityId SAML2 entity id * @param {Saml2ProviderSkeleton} providerData Object representing a SAML entity provider * @returns {Promise<Saml2ProviderSkeleton>} a promise that resolves to a saml2 entity provider object */ updateSaml2Provider(location: Saml2ProiderLocation, providerData: Saml2ProviderSkeleton, entityId?: string): Promise<Saml2ProviderSkeleton>; /** * Delete an entity provider. The response can be saved to file as is. * @param {string} entityId Provider entity id * @returns {Promise<Saml2ProviderSkeleton>} Promise resolving to a Saml2ExportInterface object. */ deleteSaml2Provider(entityId: string): Promise<Saml2ProviderSkeleton>; /** * Delete all entity providers. * @returns {Promise<Saml2ProviderSkeleton[]>} Promise resolving to an array of Saml2ProviderSkeleton objects. */ deleteSaml2Providers(): Promise<Saml2ProviderSkeleton[]>; /** * Get a SAML2 entity provider's metadata URL by entity id * @param {string} entityId SAML2 entity id * @returns {string} the URL to get the metadata from */ getSaml2ProviderMetadataUrl(entityId: string): string; /** * Get a SAML2 entity provider's metadata by entity id * @param {string} entityId SAML2 entity id * @returns {Promise<object>} a promise that resolves to an object containing a SAML2 metadata */ getSaml2ProviderMetadata(entityId: string): Promise<any>; /** * Export a single entity provider. The response can be saved to file as is. * @param {string} entityId Provider entity id * @param {Saml2EntitiesExportOptions} options export options * @returns {Promise<Saml2ExportInterface>} Promise resolving to a Saml2ExportInterface object. */ exportSaml2Provider(entityId: string, options?: Saml2EntitiesExportOptions): Promise<Saml2ExportInterface>; /** * Export all entity providers. The response can be saved to file as is. * @param {Saml2EntitiesExportOptions} options export options * @returns {Promise<Saml2ExportInterface>} Promise resolving to a Saml2ExportInterface object. */ exportSaml2Providers(options?: Saml2EntitiesExportOptions): Promise<Saml2ExportInterface>; /** * Import a SAML entity provider * @param {string} entityId Provider entity id * @param {Saml2ExportInterface} importData Import data * @param {Saml2EntitiesImportOptions} options import options * @returns {Promise<Saml2ProviderSkeleton>} a promise resolving to a provider object */ importSaml2Provider(entityId: string, importData: Saml2ExportInterface, options?: Saml2EntitiesImportOptions): Promise<Saml2ProviderSkeleton>; /** * Import SAML entity providers * @param {Saml2ExportInterface} importData Import data * @param {Saml2EntitiesImportOptions} options import options * @returns {Promise<Saml2ProviderSkeleton[]>} a promise resolving to an array of provider objects */ importSaml2Providers(importData: Saml2ExportInterface, options?: Saml2EntitiesImportOptions): Promise<Saml2ProviderSkeleton[]>; /** * Get SAML2 entity provider stubs * @returns {Promise<Saml2ProviderStub[]>} a promise that resolves to an array of saml2 entity stubs * @deprecated since v2.0.0 use {@link Saml2.readSaml2ProviderStubs | readSaml2ProviderStubs} instead * ```javascript * readSaml2ProviderStubs(): Promise<Saml2ProviderStub[]> * ``` * @group Deprecated */ getSaml2ProviderStubs(): Promise<Saml2ProviderStub[]>; /** * Get a SAML2 entity provider's metadata URL by entity id * @param {string} entityId SAML2 entity id * @returns {string} the URL to get the metadata from * @deprecated since v2.0.0 use {@link Saml2.getSaml2ProviderMetadataUrl | getSaml2ProviderMetadataUrl} instead * ```javascript * getSaml2ProviderMetadataUrl(entityId: string): string * ``` * @group Deprecated */ getProviderMetadataUrl(entityId: string): string; /** * Get a SAML2 entity provider's metadata by entity id * @param {string} entityId SAML2 entity id * @returns {Promise<any>} a promise that resolves to an object containing a SAML2 metadata * @deprecated since v2.0.0 use {@link Saml2.getSaml2ProviderMetadata | getSaml2ProviderMetadata} instead * ```javascript * getSaml2ProviderMetadata(entityId: string): Promise<any> * ``` * @group Deprecated */ getProviderMetadata(entityId: string): Promise<any>; /** * * @param {string} entityId Provider entity id * @returns {Promise<Saml2ProviderStub>} Promise resolving to a Saml2ExportInterface object. * @deprecated since v2.0.0 use {@link Saml2.readSaml2ProviderStub | readSaml2ProviderStub} instead * ```javascript * readSaml2ProviderStub(entityId: string): Promise<Saml2ProviderStub> * ``` * @group Deprecated */ getSaml2ProviderStub(entityId: string): Promise<Saml2ProviderStub>; /** * Export a single entity provider. The response can be saved to file as is. * @param {string} entityId Provider entity id * @returns {Promise<Saml2ProviderSkeleton>} Promise resolving to a Saml2ExportInterface object. * @deprecated since v2.0.0 use {@link Saml2.readSaml2Provider | readSaml2Provider} instead * ```javascript * readSaml2Provider(entityId: string): Promise<Saml2ProviderSkeleton> * ``` * @group Deprecated */ getSaml2Provider(entityId: string): Promise<Saml2ProviderSkeleton>; }; declare const _default: (state: State) => Saml2; export default _default; export interface Saml2EntitiesImportOptions { /** * Include any dependencies (scripts). */ deps: boolean; } export interface Saml2EntitiesExportOptions { /** * Include any dependencies (scripts). */ deps: boolean; } export interface Saml2ExportInterface { meta?: ExportMetaData; script: Record<string, ScriptSkeleton>; saml: { hosted: Record<string, Saml2ProviderSkeleton>; remote: Record<string, Saml2ProviderSkeleton>; metadata: Record<string, string[]>; }; } export declare function createSaml2ExportTemplate({ state, }: { state: State; }): Saml2ExportInterface; /** * Get SAML2 entity provider stubs * @returns {Promise<Saml2ProviderStub[]>} a promise that resolves to an array of saml2 entity stubs */ export declare function readSaml2ProviderStubs({ state, }: { state: State; }): Promise<Saml2ProviderStub[]>; /** * Get all SAML2 entity ids * @returns {Promise<string[]>} a promise that resolves to an array of saml2 entity ids */ export declare function readSaml2EntityIds({ state, }: { state: State; }): Promise<string[]>; /** * Get a SAML2 entity provider's metadata URL by entity id * @param {string} entityId SAML2 entity id * @returns {string} the URL to get the metadata from */ export declare function getSaml2ProviderMetadataUrl({ entityId, state, }: { entityId: string; state: State; }): string; /** * Get a SAML2 entity provider's metadata by entity id * @param {string} entityId SAML2 entity id * @returns {Promise<object>} a promise that resolves to an object containing a SAML2 metadata */ export declare function getSaml2ProviderMetadata({ entityId, state, }: { entityId: string; state: State; }): Promise<string>; /** * * @param {string} entityId Provider entity id * @returns {Promise<Saml2ProviderStub>} Promise resolving to a Saml2ExportInterface object. */ export declare function readSaml2ProviderStub({ entityId, state, }: { entityId: string; state: State; }): Promise<Saml2ProviderStub>; /** * Export a single entity provider. The response can be saved to file as is. * @param {string} entityId Provider entity id * @returns {Promise<Saml2ProviderSkeleton>} Promise resolving to a Saml2ExportInterface object. */ export declare function readSaml2Provider({ entityId, state, }: { entityId: string; state: State; }): Promise<Saml2ProviderSkeleton>; /** * Create a SAML2 entity provider * @param {Saml2ProiderLocation} location 'hosted' or 'remote' * @param {Saml2ProviderSkeleton} providerData Object representing a SAML entity provider * @param {string} metaData Base64-encoded metadata XML. Only required for remote providers * @returns {Promise<Saml2ProviderSkeleton>} a promise that resolves to a saml2 entity provider object */ export declare function createSaml2Provider({ location, providerData, metaData, state, }: { location: Saml2ProiderLocation; providerData: Saml2ProviderSkeleton; metaData?: string; state: State; }): Promise<Saml2ProviderSkeleton>; /** * Update SAML2 entity provider * @param {Saml2ProiderLocation} location Entity provider location (hosted or remote) * @param {string} entityId SAML2 entity id * @param {Saml2ProviderSkeleton} providerData Object representing a SAML entity provider * @returns {Promise<Saml2ProviderSkeleton>} a promise that resolves to a saml2 entity provider object */ export declare function updateSaml2Provider({ location, entityId, providerData, state, }: { location: Saml2ProiderLocation; entityId?: string; providerData: Saml2ProviderSkeleton; state: State; }): Promise<Saml2ProviderSkeleton>; /** * Delete an entity provider. The response can be saved to file as is. * @param {string} entityId Provider entity id * @returns {Promise<Saml2ProviderSkeleton>} Promise resolving to a Saml2ExportInterface object. */ export declare function deleteSaml2Provider({ entityId, state, }: { entityId: string; state: State; }): Promise<Saml2ProviderSkeleton>; /** * Delete all entity providers. * @returns {Promise<Saml2ProviderSkeleton[]>} Promise resolving to an array of Saml2ProviderSkeleton objects. */ export declare function deleteSaml2Providers({ state, }: { state: State; }): Promise<Saml2ProviderSkeleton[]>; /** * Export a single entity provider. The response can be saved to file as is. * @param {string} entityId Provider entity id * @returns {Promise<Saml2ExportInterface>} Promise resolving to a Saml2ExportInterface object. */ export declare function exportSaml2Provider({ entityId, options, state, }: { entityId: string; options?: Saml2EntitiesExportOptions; state: State; }): Promise<Saml2ExportInterface>; /** * Export all entity providers. The response can be saved to file as is. * @returns {Promise<Saml2ExportInterface>} Promise resolving to a Saml2ExportInterface object. */ export declare function exportSaml2Providers({ options, state, }: { options?: Saml2EntitiesExportOptions; state: State; }): Promise<Saml2ExportInterface>; /** * Include dependencies from the import file * @param {object} providerData Object representing a SAML entity provider * @param {object} fileData File data object to read dependencies from */ export declare function importDependencies({ providerData, fileData, state, }: { providerData: Saml2ProviderSkeleton; fileData: Saml2ExportInterface; state: State; }): Promise<void>; /** * Import a SAML entity provider * @param {string} entityId Provider entity id * @param {Saml2ExportInterface} importData Import data * @param {Saml2ProviderImportOptions} options import options * @returns {Promise<Saml2ProviderSkeleton>} a promise resolving to a provider object */ export declare function importSaml2Provider({ entityId, importData, options, state, }: { entityId: string; importData: Saml2ExportInterface; options?: Saml2EntitiesImportOptions; state: State; }): Promise<Saml2ProviderSkeleton>; /** * Import SAML entity providers * @param {Saml2ExportInterface} importData Import data * @param {Saml2ProviderImportOptions} options import options * @returns {Promise<Saml2ProviderSkeleton[]>} a promise resolving to an array of provider objects */ export declare function importSaml2Providers({ importData, options, state, }: { importData: Saml2ExportInterface; options?: Saml2EntitiesImportOptions; state: State; }): Promise<Saml2ProviderSkeleton[]>; //# sourceMappingURL=Saml2Ops.d.ts.map