/** Props for {@link OAuthAppForm}. */
export interface OAuthAppFormProps {
    /**
     * Vendor / provider display name shown in the instruction text.
     * Example: `"Figma"`, `"Slack"`.
     */
    readonly providerName: string;
    /**
     * URL to the vendor's OAuth app registration page. When provided,
     * a help link is rendered so the user can register their app.
     */
    readonly vendorDocsUrl?: string | null;
    /**
     * Called when the form is submitted with valid credentials.
     * The parent is responsible for calling the `setOrgOAuthApp` mutation
     * and handling errors.
     */
    readonly onSubmit: (clientId: string, clientSecret: string) => Promise<void>;
    /** Called when the user cancels the form. */
    readonly onCancel: () => void;
    /** `true` while the submit mutation is in flight. */
    readonly isSubmitting: boolean;
    /** Error from the last failed submit, or `null`. */
    readonly error: Error | null;
    /** Additional CSS classes for the form root. */
    readonly className?: string;
}
/**
 * Two-field form for registering an org-level OAuth app override (BYOA).
 *
 * Collects only `client_id` and `client_secret` — all other OAuth
 * configuration (endpoint URLs, scopes) is cloned from the platform's
 * OAuthApp template by the backend.
 *
 * This is a pure presentational component with no dialog wrapper
 * (headless-first). The parent is responsible for rendering it inside
 * a `<dialog>`, modal, sheet, or inline context as needed. Platform
 * builders who want a different container can import just the form.
 *
 * All styling flows through `--stgm-*` design tokens via `cn()`.
 *
 * @example
 * ```tsx
 * <OAuthAppForm
 *   providerName="Figma"
 *   vendorDocsUrl="https://www.figma.com/developers/api#oauth2"
 *   onSubmit={async (clientId, clientSecret) => {
 *     await orgOAuthApp.setOrgOAuthApp(clientId, clientSecret);
 *     orgOAuthApp.refetch();
 *   }}
 *   onCancel={() => setShowForm(false)}
 *   isSubmitting={orgOAuthApp.isSetting}
 *   error={orgOAuthApp.setError}
 * />
 * ```
 */
export declare function OAuthAppForm({ providerName, vendorDocsUrl, onSubmit, onCancel, isSubmitting, error, className, }: OAuthAppFormProps): import("react/jsx-runtime").JSX.Element;
//# sourceMappingURL=OAuthAppForm.d.ts.map