/** One resolved operation, structured so emitters can build both the interface
 *  member AND a typed transport call (e.g. a REST `postJson(...) as Promise<R>`). */
export interface ImportedOperationSig {
    /** The dotted select, e.g. `PaymentService.processPayment`. */
    entry: string;
    /** The method name (the part after the owner), e.g. `processPayment`. */
    tail: string;
    /** The parameter object type, e.g. `input: { orderId: string }`, or '' if none. */
    paramType: string;
    /** The TS return type, e.g. `Receipt` / `string` / `void`. */
    returnType: string;
}
export interface ImportedOperationSignatures {
    /** Interface member lines, e.g. `  op(input: { x: string }): Promise<Order>;`. */
    signatures: string[];
    /** Structured resolved operations (parallel to the resolved part of `signatures`). */
    operations: ImportedOperationSig[];
    /** `export interface <Model> { ... }` blocks for models referenced in the signatures. */
    modelInterfaces: string[];
    /** Names of the referenced models emitted. */
    referencedModels: string[];
    /** Dotted entries that resolved to a real operation. */
    emitted: string[];
    /** Dotted entries that did NOT resolve (unknown owner/op). */
    remaining: string[];
}
/**
 * Parse a provider `.specly` + derive real typed signatures for the selected
 * dotted operations. Non-dotted entries and unresolved ops go to `remaining`
 * so the caller keeps prior behaviour for them.
 */
export declare function extractImportedOperationSignatures(specContent: string, dottedEntries: string[]): ImportedOperationSignatures;
//# sourceMappingURL=imported-operation-signatures.d.ts.map