@rockcarver/frodo-lib
Version:
A library to manage ForgeRock Identity Cloud tenants, ForgeOps deployments, and classic deployments.
112 lines • 4.56 kB
TypeScript
import { State } from '../shared/State';
import { IdObjectSkeletonInterface, PagedResult } from './ApiTypes';
export type Saml2ProiderLocation = 'hosted' | 'remote';
export type Saml2ProviderStub = IdObjectSkeletonInterface & {
entityId: string;
location: Saml2ProiderLocation;
roles: string[];
};
export type Saml2ProviderSkeleton = IdObjectSkeletonInterface & {
entityId: string;
entityLocation: Saml2ProiderLocation;
serviceProvider: unknown;
identityProvider: {
assertionProcessing?: {
attributeMapper?: {
attributeMapperScript?: string;
};
};
advanced?: {
idpAdapter?: {
idpAdapterScript?: string;
};
};
};
attributeQueryProvider: unknown;
xacmlPolicyEnforcementPoint: unknown;
};
/**
* Get all SAML2 entity providers
* @returns {Promise<PagedResult<Saml2ProviderStub>>} a promise that resolves to an array of saml2 entity stubs
*/
export declare function getProviderStubs({ state, }: {
state: State;
}): Promise<PagedResult<Saml2ProviderStub>>;
/**
* Query providers matching the filter and return the requested fields
* @param {string} filter CREST filter string, eg "entityId+eq+'${entityId}'" or "true" for all providers
* @param {string[]} fields array of field names to include in the response
* @returns {Promise<PagedResult<Saml2ProviderStub>>} a promise that resolves to an object containing an array of saml2 entities
*/
export declare function queryProviderStubs({ filter, fields, state, }: {
filter?: string;
fields?: string[];
state: State;
}): Promise<PagedResult<Saml2ProviderStub>>;
/**
* Geta SAML2 entity provider by location and id
* @param {Saml2ProiderLocation} location Entity provider location
* @param {string} entityId64 Base64-encoded, unpadded provider entity id
* @returns {Promise<Saml2ProviderSkeleton>} a promise that resolves to a saml2 entity provider object
*/
export declare function getProvider({ location, entityId64, state, }: {
location: Saml2ProiderLocation;
entityId64: string;
state: State;
}): Promise<Saml2ProviderSkeleton>;
/**
* Geta SAML2 entity provider by location and id
* @param {Saml2ProiderLocation} location Entity provider location (hosted or remote)
* @param {string} entityId64 Base64-encoded provider entity id
* @returns {Promise<Saml2ProviderSkeleton>} a promise that resolves to a saml2 entity provider object
*/
export declare function deleteProvider({ location, entityId64, state, }: {
location: Saml2ProiderLocation;
entityId64: string;
state: State;
}): 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
*/
export declare function getProviderMetadataUrl({ 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<string>} a promise that resolves to an object containing a SAML2 metadata
*/
export declare function getProviderMetadata({ entityId, state, }: {
entityId: string;
state: State;
}): Promise<string>;
/**
* 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 createProvider({ 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 updateProvider({ location, entityId, providerData, state, }: {
location: Saml2ProiderLocation;
entityId?: string;
providerData: Saml2ProviderSkeleton;
state: State;
}): Promise<Saml2ProviderSkeleton>;
//# sourceMappingURL=Saml2Api.d.ts.map