import BaseResource from '../../BaseResource';
import type * as SchemaTypes from '../SchemaTypes';
import type * as SimpleSchemaTypes from '../SimpleSchemaTypes';
export default class SsoGroup extends BaseResource {
    static readonly TYPE: "sso_group";
    /**
     * List all SSO groups
     *
     * Read more: https://www.datocms.com/docs/content-management-api/resources/sso-group/instances
     *
     * @throws {ApiError}
     * @throws {TimeoutError}
     */
    list(): Promise<SimpleSchemaTypes.SsoGroupInstancesTargetSchema>;
    /**
     * List all SSO groups
     *
     * Read more: https://www.datocms.com/docs/content-management-api/resources/sso-group/instances
     *
     * @throws {ApiError}
     * @throws {TimeoutError}
     */
    rawList(): Promise<SchemaTypes.SsoGroupInstancesTargetSchema>;
    /**
     * Sync SSO provider groups to DatoCMS roles
     *
     * Read more: https://www.datocms.com/docs/content-management-api/resources/sso-group/copy_roles
     *
     * @throws {ApiError}
     * @throws {TimeoutError}
     */
    copyRoles(ssoGroupId: string | SimpleSchemaTypes.SsoGroupData): Promise<SimpleSchemaTypes.SsoGroup>;
    /**
     * Sync SSO provider groups to DatoCMS roles
     *
     * Read more: https://www.datocms.com/docs/content-management-api/resources/sso-group/copy_roles
     *
     * @throws {ApiError}
     * @throws {TimeoutError}
     */
    rawCopyRoles(ssoGroupId: string): Promise<SchemaTypes.SsoGroupCopyRolesTargetSchema>;
    /**
     * Update a SSO group
     *
     * Read more: https://www.datocms.com/docs/content-management-api/resources/sso-group/update
     *
     * @throws {ApiError}
     * @throws {TimeoutError}
     */
    update(ssoGroupId: string | SimpleSchemaTypes.SsoGroupData, body: SimpleSchemaTypes.SsoGroupUpdateSchema): Promise<SimpleSchemaTypes.SsoGroup>;
    /**
     * Update a SSO group
     *
     * Read more: https://www.datocms.com/docs/content-management-api/resources/sso-group/update
     *
     * @throws {ApiError}
     * @throws {TimeoutError}
     */
    rawUpdate(ssoGroupId: string, body: SchemaTypes.SsoGroupUpdateSchema): Promise<SchemaTypes.SsoGroupUpdateTargetSchema>;
    /**
     * Delete a group
     *
     * Read more: https://www.datocms.com/docs/content-management-api/resources/sso-group/destroy
     *
     * @throws {ApiError}
     * @throws {TimeoutError}
     */
    destroy(ssoGroupId: string | SimpleSchemaTypes.SsoGroupData): Promise<SimpleSchemaTypes.SsoGroup>;
    /**
     * Delete a group
     *
     * Read more: https://www.datocms.com/docs/content-management-api/resources/sso-group/destroy
     *
     * @throws {ApiError}
     * @throws {TimeoutError}
     */
    rawDestroy(ssoGroupId: string): Promise<SchemaTypes.SsoGroupDestroyTargetSchema>;
}
