import { DateTime } from '../../internal/utils';
import { SerializedData } from '../../serialization/json';
export interface ExternalCollabSecuritySettingsV2025R0 {
    /**
     * List of domains that are not allowed for external collaboration. Applies if state is `denylist`. */
    readonly denylistDomains?: readonly string[];
    /**
     * List of email addresses that are not allowed for external collaboration. Applies if state is `denylist`. */
    readonly denylistEmails?: readonly string[];
    /**
     * List of domains that are allowed for external collaboration. Applies if state is `allowlist`. */
    readonly allowlistDomains?: readonly string[];
    /**
     * List of email addresses that are allowed for external collaboration. Applies if state is `allowlist`. */
    readonly allowlistEmails?: readonly string[];
    /**
     * The state of the external collaboration security settings. Possible values include `enabled`, `disabled`, `allowlist`, and `denylist`. */
    readonly state?: string | null;
    /**
     * The status of the scheduling to apply external collaboration security settings. Possible values include `in_progress`, `scheduled`, `completed`, `failed`, and `scheduled_immediate`. */
    readonly scheduledStatus?: string | null;
    /**
     * Scheduled at. */
    readonly scheduledAt?: DateTime | null;
    /**
     * Factor type for the external collaborators authentication. Possible values include `totp`, `any`, or `unknown`. */
    readonly factorTypeSettings?: string | null;
    readonly rawData?: SerializedData;
}
export declare function serializeExternalCollabSecuritySettingsV2025R0(val: ExternalCollabSecuritySettingsV2025R0): SerializedData;
export declare function deserializeExternalCollabSecuritySettingsV2025R0(val: SerializedData): ExternalCollabSecuritySettingsV2025R0;
//# sourceMappingURL=externalCollabSecuritySettingsV2025R0.d.ts.map