import { DbColumn } from './types'; export type SequenceClaim = /** 관례형 파생 — 사람이 고르지 않은 이름. 충돌 판정의 **지목 대상**(고치는 비용이 1편집 = 이름 명시). */ { kind: 'derived'; name: string; } /** 명시 — `sequenceName`. `autoIncrement` 는 ①오버라이드 / ②애플리케이션 채번을 가른다. */ | { kind: 'explicit'; name: string; autoIncrement: boolean; }; /** 관례형 시퀀스명 = `__seq`(PG serial 관례). 절단하지 않는다(헤더 ①~④). */ export declare function defaultSequenceName(table: string, column: string): string; /** 컬럼 `DEFAULT nextval` 이 성립하는가 — `autoIncrement` × 수치형. 비수치형 자동증가는 타입이 맞지 않는다. */ export declare function isDbDefaultSequence(col: Pick): boolean; /** * 이 컬럼이 차지하는 시퀀스명과 그 출처. 아무 시퀀스도 쓰지 않으면 `null`. * * - `sequenceName` 이 비공백이면 **explicit** — 타입·`autoIncrement` 와 무관하게 그 이름을 차지한다 * (애플리케이션 채번은 문자열 컬럼이 지배 형상이므로 수치형 게이트를 두면 그 용법이 통째로 사라진다). * - 아니면 `autoIncrement` × 수치형일 때만 **derived**. 비수치형 자동증가는 `DEFAULT nextval` 을 낼 수 없어 * 시퀀스를 차지하지 않는다(DDL 이 주석으로 신호하는 자리). */ export declare function sequenceClaim(col: Pick, table: string, column: string): SequenceClaim | null;