import { DeveloperDeleteParams, DeveloperGetParams, DeveloperGetResponse, DeveloperInviteParams, DeveloperInviteResponse, DeveloperListResponse, DeveloperListV2Params, DeveloperListV2Response, DeveloperUpdateParams, DeveloperUpdateResponse, OystehrClientRequest } from '../..';
import { SDKResource } from '../../client/client';
import { OystehrConfig } from '../../config';
export declare class Developer extends SDKResource {
    #private;
    constructor(config: OystehrConfig);
    /**
     * Get the Developer with the provided ID. Developer accounts are used to log into the [Developer Console](https://console.oystehr.com/) and administrate [Projects](https://docs.oystehr.com/oystehr/services/project/). [Developers](https://docs.oystehr.com/oystehr/services/iam/developers/) are the only people who can belong to and act across multiple Projects, because they exist above the Project level.
     *
     * Access Policy Action: `IAM:GetDeveloper`
     * Access Policy Resource: `IAM:Developer`
     */
    get(params: DeveloperGetParams, request?: OystehrClientRequest): Promise<DeveloperGetResponse>;
    /**
     * Update the Developer with the provided ID. Developer accounts are used to log into the [Developer Console](https://console.oystehr.com/) and administrate [Projects](https://docs.oystehr.com/oystehr/services/project/). [Developers](https://docs.oystehr.com/oystehr/services/iam/developers/) are the only people who can belong to and act across multiple Projects, because they exist above the Project level.
     *
     * Access Policy Action: `IAM:UpdateDeveloper`
     * Access Policy Resource: `IAM:Developer`
     */
    update(params: DeveloperUpdateParams, request?: OystehrClientRequest): Promise<DeveloperUpdateResponse>;
    /**
     * Remove the Developer with the provided ID from the project. Developer accounts are used to log into the [Developer Console](https://console.oystehr.com/) and administrate [Projects](https://docs.oystehr.com/oystehr/services/project/). [Developers](https://docs.oystehr.com/oystehr/services/iam/developers/) are the only people who can belong to and act across multiple Projects, because they exist above the Project level.
     *
     * Access Policy Action: `IAM:RemoveDeveloper`
     * Access Policy Resource: `IAM:Developer`
     */
    delete(params: DeveloperDeleteParams, request?: OystehrClientRequest): Promise<void>;
    /**
     * Invite a new Developer to the Project. Developer accounts are used to log into the [Developer Console](https://console.oystehr.com/) and administrate [Projects](https://docs.oystehr.com/oystehr/services/project/). [Developers](https://docs.oystehr.com/oystehr/services/iam/developers/) are the only people who can belong to and act across multiple Projects, because they exist above the Project level.
     *
     * Access Policy Action: `IAM:InviteDeveloper`
     * Access Policy Resource: `IAM:Developer`
     */
    invite(params: DeveloperInviteParams, request?: OystehrClientRequest): Promise<DeveloperInviteResponse>;
    /**
     * DEPRECATED. Please use [v2/list](https://api-reference.oystehr.com/reference/get_developer-v2-list) instead.
     *
     * Get a list of all Developers who are part of the Project. Developer accounts are used to log into the [Developer Console](https://console.oystehr.com/) and administrate [Projects](https://docs.oystehr.com/oystehr/services/project/). [Developers](https://docs.oystehr.com/oystehr/services/iam/developers/) are the only people who can belong to and act across multiple Projects, because they exist above the Project level.
     *
     * Access Policy Action: `IAM:ListAllDevelopers`
     * Access Policy Resource: `IAM:Developer`
     */
    list(request?: OystehrClientRequest): Promise<DeveloperListResponse>;
    /**
     * Get Developers in the Project with pagination, sort, sort order and filtering. [Users](https://docs.oystehr.com/oystehr/services/app/users/) are the people who log into the [Applications](https://docs.oystehr.com/oystehr/services/app/applications/) you configure for securing the apps you build on top of Oystehr.
     *
     * Access Policy Action: `Project:ListAllUsers`
     * Access Policy Resource: `Project:Settings`
     */
    listV2(params: DeveloperListV2Params, request?: OystehrClientRequest): Promise<DeveloperListV2Response>;
    /**
     * Get Developers in the Project with pagination, sort, sort order and filtering. [Users](https://docs.oystehr.com/oystehr/services/app/users/) are the people who log into the [Applications](https://docs.oystehr.com/oystehr/services/app/applications/) you configure for securing the apps you build on top of Oystehr.
     *
     * Access Policy Action: `Project:ListAllUsers`
     * Access Policy Resource: `Project:Settings`
     */
    listV2(request?: OystehrClientRequest): Promise<DeveloperListV2Response>;
}
