Diretiva AngularJS com método chamado de fora

Eu criei uma diretiva com um método que deve ser chamado de outros elementos que não fazem parte da diretiva. No entanto, parece que esse método não está exposto.

Alguns exemplos de código jade para esclarecer:

//- a controller for the view itself
div(ng-controller="someController")

    //- this is part of the view itself, not within the directive
    div(ng-repeat="element in elements") 
        div(ng-click="methodFromDirective(element)") click element {{$index}} to trigger directive

    //- this is the directive
    div(some-directive)

osomeController não é muito importante aqui, eu acho. Possui métodos, mas NÃO omethodFromDirective(element) 1. omethodFromDirective(element) é um método que existe apenas na diretiva.

Se eu criar uma diretiva e colocar alguns logs na criação, posso ver claramente que ela foi criada. No entanto, omethodFromDirective(element) O método não é exposto para que as chamadas não sejam acionadas corretamente.

omethodFromDirective(element) em si só funcionará em elementos de dentro do modelo da diretiva.

algum coffeescript para mostrar a definição da diretiva (ignore os erros de indentação aqui):

'use strict'
define [], () ->

someDirective = () ->
    restrict: 'A'
    scope: {
        show: '='
    }
    transclude: false
    templateUrl: 'someTemplateHere.html'

    controller = ($scope)  ->

       # exposing the method here
       $scope.methodFromDirective(element)->
           $scope.theMethod element

    link = (scope, element, attr) ->

       # this is logged
       console.log "init someDirective"

       # triggering this method form outside fails
       scope.theMethod = (element)->
          console.log "method triggered with element", JSON.stringify(element)

questionAnswers(3)

yourAnswerToTheQuestion