/**
 * @module step-basics.component
 * @description Step 1 of the create wizard — entity name, table name, schema, description.
 *
 * Auto-derives the table name from entity name (PascalCase, no spaces) but
 * lets the user override it freely.  Once the user manually edits the table
 * name it stops tracking entity name changes.
 */
import { EventEmitter, OnInit } from '@angular/core';
import type { BasicsStepValue, SchemaOption } from '../../../database-designer.types.js';
import * as i0 from "@angular/core";
export declare class StepBasicsComponent implements OnInit {
    private readonly cdr;
    InitialValue: Partial<BasicsStepValue>;
    private _availableSchemas;
    set AvailableSchemas(schemas: SchemaOption[]);
    get AvailableSchemas(): SchemaOption[];
    readonly ValueChanged: EventEmitter<BasicsStepValue>;
    EntityName: string;
    TableName: string;
    SchemaName: string;
    Description: string;
    /** When true, TableName auto-tracks EntityName changes. */
    tableNameIsAuto: boolean;
    ShowCustomSchemaInput: boolean;
    CustomSchemaName: string;
    ngOnInit(): void;
    OnEntityNameChange(value: string): void;
    OnTableNameChange(value: string): void;
    OnSchemaChange(value: string): void;
    OnCustomSchemaChange(value: string): void;
    OnDescriptionChange(value: string): void;
    /** Pick the first schema in the list as default (usually '__mj_UDT'). */
    private defaultSchema;
    private updateCustomSchemaVisibility;
    /** Convert "Support Tickets" → "SupportTickets". */
    deriveTableName(entityName: string): string;
    private emit;
    static ɵfac: i0.ɵɵFactoryDeclaration<StepBasicsComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<StepBasicsComponent, "mj-entity-step-basics", never, { "InitialValue": { "alias": "InitialValue"; "required": false; }; "AvailableSchemas": { "alias": "AvailableSchemas"; "required": false; }; }, { "ValueChanged": "ValueChanged"; }, never, never, false, never>;
}
//# sourceMappingURL=step-basics.component.d.ts.map