//// [tests/cases/conformance/internalModules/exportDeclarations/ExportFunctionWithAccessibleTypesInParameterAndReturnTypeAnnotation.ts] ////

//// [ExportFunctionWithAccessibleTypesInParameterAndReturnTypeAnnotation.ts]
namespace A {

    export class Point {
        x: number;
        y: number;
    }

    export class Line {
        constructor(public start: Point, public end: Point) { }
    }

    export function fromOrigin(p: Point): Line {
        return new Line({ x: 0, y: 0 }, p);
    }
}

//// [ExportFunctionWithAccessibleTypesInParameterAndReturnTypeAnnotation.js]
"use strict";
var A;
(function (A) {
    class Point {
    }
    A.Point = Point;
    class Line {
        constructor(start, end) {
            this.start = start;
            this.end = end;
        }
    }
    A.Line = Line;
    function fromOrigin(p) {
        return new Line({ x: 0, y: 0 }, p);
    }
    A.fromOrigin = fromOrigin;
})(A || (A = {}));
