import { Construct } from 'constructs'; import * as cdktf from 'cdktf'; export interface OrganizationmanagerIdpApplicationOauthApplicationConfig extends cdktf.TerraformMetaArguments { /** * ID of the OAuth application to return. * To get the OAuth application ID, make a [ApplicationService.List] request. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/organizationmanager_idp_application_oauth_application#application_id OrganizationmanagerIdpApplicationOauthApplication#application_id} */ readonly applicationId?: string; /** * Represents current connection to the OAuth client with specified scopes * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/organizationmanager_idp_application_oauth_application#client_grant OrganizationmanagerIdpApplicationOauthApplication#client_grant} */ readonly clientGrant?: OrganizationmanagerIdpApplicationOauthApplicationClientGrant; /** * Description of the application. 0-256 characters long. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/organizationmanager_idp_application_oauth_application#description OrganizationmanagerIdpApplicationOauthApplication#description} */ readonly description?: string; /** * Settings of the group claims * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/organizationmanager_idp_application_oauth_application#group_claims_settings OrganizationmanagerIdpApplicationOauthApplication#group_claims_settings} */ readonly groupClaimsSettings?: OrganizationmanagerIdpApplicationOauthApplicationGroupClaimsSettings; /** * ID of the OAuth application to return. * To get the OAuth application ID, make a [ApplicationService.List] request. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/organizationmanager_idp_application_oauth_application#id OrganizationmanagerIdpApplicationOauthApplication#id} * * Please be aware that the id field is automatically added to all resources in Terraform providers using a Terraform provider SDK version below 2. * If you experience problems setting this value it might not be settable. Please take a look at the provider documentation to ensure it should be settable. */ readonly id?: string; /** * Resource labels as `` key:value `` pairs. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/organizationmanager_idp_application_oauth_application#labels OrganizationmanagerIdpApplicationOauthApplication#labels} */ readonly labels?: { [key: string]: string; }; /** * Name of the application. * The name is unique within the organization. 3-63 characters long. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/organizationmanager_idp_application_oauth_application#name OrganizationmanagerIdpApplicationOauthApplication#name} */ readonly name: string; /** * ID of the organization that the application belongs to. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/organizationmanager_idp_application_oauth_application#organization_id OrganizationmanagerIdpApplicationOauthApplication#organization_id} */ readonly organizationId: string; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/organizationmanager_idp_application_oauth_application#timeouts OrganizationmanagerIdpApplicationOauthApplication#timeouts} */ readonly timeouts?: OrganizationmanagerIdpApplicationOauthApplicationTimeouts; } export interface OrganizationmanagerIdpApplicationOauthApplicationClientGrant { /** * List of authorized client scopes by the application * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/organizationmanager_idp_application_oauth_application#authorized_scopes OrganizationmanagerIdpApplicationOauthApplication#authorized_scopes} */ readonly authorizedScopes?: string[]; /** * OAuth client id * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/organizationmanager_idp_application_oauth_application#client_id OrganizationmanagerIdpApplicationOauthApplication#client_id} */ readonly clientId: string; } export declare function organizationmanagerIdpApplicationOauthApplicationClientGrantToTerraform(struct?: OrganizationmanagerIdpApplicationOauthApplicationClientGrant | cdktf.IResolvable): any; export declare function organizationmanagerIdpApplicationOauthApplicationClientGrantToHclTerraform(struct?: OrganizationmanagerIdpApplicationOauthApplicationClientGrant | cdktf.IResolvable): any; export declare class OrganizationmanagerIdpApplicationOauthApplicationClientGrantOutputReference extends cdktf.ComplexObject { private isEmptyObject; private resolvableValue?; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string); get internalValue(): OrganizationmanagerIdpApplicationOauthApplicationClientGrant | cdktf.IResolvable | undefined; set internalValue(value: OrganizationmanagerIdpApplicationOauthApplicationClientGrant | cdktf.IResolvable | undefined); private _authorizedScopes?; get authorizedScopes(): string[]; set authorizedScopes(value: string[]); resetAuthorizedScopes(): void; get authorizedScopesInput(): string[]; private _clientId?; get clientId(): string; set clientId(value: string); get clientIdInput(): string; } export interface OrganizationmanagerIdpApplicationOauthApplicationGroupClaimsSettings { /** * Represents current distribution type of the groups. I.e. which groups are visible for the application users. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/organizationmanager_idp_application_oauth_application#group_distribution_type OrganizationmanagerIdpApplicationOauthApplication#group_distribution_type} */ readonly groupDistributionType?: string; } export declare function organizationmanagerIdpApplicationOauthApplicationGroupClaimsSettingsToTerraform(struct?: OrganizationmanagerIdpApplicationOauthApplicationGroupClaimsSettings | cdktf.IResolvable): any; export declare function organizationmanagerIdpApplicationOauthApplicationGroupClaimsSettingsToHclTerraform(struct?: OrganizationmanagerIdpApplicationOauthApplicationGroupClaimsSettings | cdktf.IResolvable): any; export declare class OrganizationmanagerIdpApplicationOauthApplicationGroupClaimsSettingsOutputReference extends cdktf.ComplexObject { private isEmptyObject; private resolvableValue?; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string); get internalValue(): OrganizationmanagerIdpApplicationOauthApplicationGroupClaimsSettings | cdktf.IResolvable | undefined; set internalValue(value: OrganizationmanagerIdpApplicationOauthApplicationGroupClaimsSettings | cdktf.IResolvable | undefined); private _groupDistributionType?; get groupDistributionType(): string; set groupDistributionType(value: string); resetGroupDistributionType(): void; get groupDistributionTypeInput(): string; } export interface OrganizationmanagerIdpApplicationOauthApplicationTimeouts { /** * A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/organizationmanager_idp_application_oauth_application#create OrganizationmanagerIdpApplicationOauthApplication#create} */ readonly create?: string; /** * A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). Setting a timeout for a Delete operation is only applicable if changes are saved into state before the destroy operation occurs. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/organizationmanager_idp_application_oauth_application#delete OrganizationmanagerIdpApplicationOauthApplication#delete} */ readonly delete?: string; /** * A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). Read operations occur during any refresh or planning operation when refresh is enabled. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/organizationmanager_idp_application_oauth_application#read OrganizationmanagerIdpApplicationOauthApplication#read} */ readonly read?: string; /** * A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/organizationmanager_idp_application_oauth_application#update OrganizationmanagerIdpApplicationOauthApplication#update} */ readonly update?: string; } export declare function organizationmanagerIdpApplicationOauthApplicationTimeoutsToTerraform(struct?: OrganizationmanagerIdpApplicationOauthApplicationTimeouts | cdktf.IResolvable): any; export declare function organizationmanagerIdpApplicationOauthApplicationTimeoutsToHclTerraform(struct?: OrganizationmanagerIdpApplicationOauthApplicationTimeouts | cdktf.IResolvable): any; export declare class OrganizationmanagerIdpApplicationOauthApplicationTimeoutsOutputReference extends cdktf.ComplexObject { private isEmptyObject; private resolvableValue?; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string); get internalValue(): OrganizationmanagerIdpApplicationOauthApplicationTimeouts | cdktf.IResolvable | undefined; set internalValue(value: OrganizationmanagerIdpApplicationOauthApplicationTimeouts | cdktf.IResolvable | undefined); private _create?; get create(): string; set create(value: string); resetCreate(): void; get createInput(): string; private _delete?; get delete(): string; set delete(value: string); resetDelete(): void; get deleteInput(): string; private _read?; get read(): string; set read(value: string); resetRead(): void; get readInput(): string; private _update?; get update(): string; set update(value: string); resetUpdate(): void; get updateInput(): string; } /** * Represents a {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/organizationmanager_idp_application_oauth_application yandex_organizationmanager_idp_application_oauth_application} */ export declare class OrganizationmanagerIdpApplicationOauthApplication extends cdktf.TerraformResource { static readonly tfResourceType = "yandex_organizationmanager_idp_application_oauth_application"; /** * Generates CDKTF code for importing a OrganizationmanagerIdpApplicationOauthApplication resource upon running "cdktf plan " * @param scope The scope in which to define this construct * @param importToId The construct id used in the generated config for the OrganizationmanagerIdpApplicationOauthApplication to import * @param importFromId The id of the existing OrganizationmanagerIdpApplicationOauthApplication that should be imported. Refer to the {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/organizationmanager_idp_application_oauth_application#import import section} in the documentation of this resource for the id to use * @param provider? Optional instance of the provider where the OrganizationmanagerIdpApplicationOauthApplication to import is found */ static generateConfigForImport(scope: Construct, importToId: string, importFromId: string, provider?: cdktf.TerraformProvider): any; /** * Create a new {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/organizationmanager_idp_application_oauth_application yandex_organizationmanager_idp_application_oauth_application} Resource * * @param scope The scope in which to define this construct * @param id The scoped construct ID. Must be unique amongst siblings in the same scope * @param options OrganizationmanagerIdpApplicationOauthApplicationConfig */ constructor(scope: Construct, id: string, config: OrganizationmanagerIdpApplicationOauthApplicationConfig); private _applicationId?; get applicationId(): string; set applicationId(value: string); resetApplicationId(): void; get applicationIdInput(): string; private _clientGrant; get clientGrant(): OrganizationmanagerIdpApplicationOauthApplicationClientGrantOutputReference; putClientGrant(value: OrganizationmanagerIdpApplicationOauthApplicationClientGrant): void; resetClientGrant(): void; get clientGrantInput(): any; get createdAt(): any; private _description?; get description(): string; set description(value: string); resetDescription(): void; get descriptionInput(): string; private _groupClaimsSettings; get groupClaimsSettings(): OrganizationmanagerIdpApplicationOauthApplicationGroupClaimsSettingsOutputReference; putGroupClaimsSettings(value: OrganizationmanagerIdpApplicationOauthApplicationGroupClaimsSettings): void; resetGroupClaimsSettings(): void; get groupClaimsSettingsInput(): any; private _id?; get id(): string; set id(value: string); resetId(): void; get idInput(): string; private _labels?; get labels(): { [key: string]: string; }; set labels(value: { [key: string]: string; }); resetLabels(): void; get labelsInput(): { [key: string]: string; }; private _name?; get name(): string; set name(value: string); get nameInput(): string; private _organizationId?; get organizationId(): string; set organizationId(value: string); get organizationIdInput(): string; get status(): any; private _timeouts; get timeouts(): OrganizationmanagerIdpApplicationOauthApplicationTimeoutsOutputReference; putTimeouts(value: OrganizationmanagerIdpApplicationOauthApplicationTimeouts): void; resetTimeouts(): void; get timeoutsInput(): any; get updatedAt(): any; protected synthesizeAttributes(): { [name: string]: any; }; protected synthesizeHclAttributes(): { [name: string]: any; }; }