import "../ApiClient-fBZ10h6n.mjs";
import "../UserType-BsLznrlV.mjs";
import { t as BindingType } from "../BindingType-C7TJLtiV.mjs";
import { t as IAMBindingControllerApiBindingGroup_default } from "../IAMBindingControllerApiBindingGroup-BwqVes8y.mjs";
import { t as IAMBindingControllerApiBindingUser_default } from "../IAMBindingControllerApiBindingUser-DNDfX7f5.mjs";
import { t as IAMBindingControllerApiRole_default } from "../IAMBindingControllerApiRole-Dm1M3rJ8.mjs";
//#region src/model/IAMBindingControllerApiBindingDetail.d.ts
type IIAMBindingControllerApiBindingDetail = {
id: string;
type: BindingType;
namespace: string;
role: IAMBindingControllerApiRole_default;
group: IAMBindingControllerApiBindingGroup_default;
user: IAMBindingControllerApiBindingUser_default;
};
/**
* @typedef {Object} IIAMBindingControllerApiBindingDetail
* @property {String} id
* @property {BindingType} type
* @property {String} namespace
* @property {IAMBindingControllerApiRole} role
* @property {IAMBindingControllerApiBindingGroup} group
* @property {IAMBindingControllerApiBindingUser} user
*/
/**
* The IAMBindingControllerApiBindingDetail model module.
* @module model/IAMBindingControllerApiBindingDetail
* @type {IIAMBindingControllerApiBindingDetail}
*/
declare class IAMBindingControllerApiBindingDetail {
/**
* Initializes the fields of this object.
* This method is used by the constructors of any subclasses, in order to implement multiple inheritance (mix-ins).
* Only for internal use.
*/
static initialize(obj: any): void;
/**
* Constructs a IAMBindingControllerApiBindingDetail from a plain JavaScript object, optionally creating a new instance.
* Copies all relevant properties from data to obj if supplied or a new instance if not.
* @param {Object} data The plain JavaScript object bearing properties of interest.
* @param {module:model/IAMBindingControllerApiBindingDetail} obj Optional instance to populate.
* @return {module:model/IAMBindingControllerApiBindingDetail} The populated IAMBindingControllerApiBindingDetail instance.
*/
static constructFromObject(data: any, obj: any): any;
/**
* Validates the JSON data with respect to IAMBindingControllerApiBindingDetail.
* @param {Object} data The plain JavaScript object bearing properties of interest.
* @return {boolean} to indicate whether the JSON data is valid with respect to IAMBindingControllerApiBindingDetail.
*/
static validateJSON(data: any): boolean;
id: string;
type: BindingType;
namespace: string;
role: IAMBindingControllerApiRole_default;
group: IAMBindingControllerApiBindingGroup_default;
user: IAMBindingControllerApiBindingUser_default;
}
//#endregion
export { IIAMBindingControllerApiBindingDetail, IAMBindingControllerApiBindingDetail as default };