// Copyright 2016 The Fuchsia Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

library fuchsia.tts;

[Discoverable]
interface TtsService {
  // Speak the string of words provided.  Return the provided token to the
  // caller when the speaking has finished.
  1: Say(string words, uint64 token) -> (uint64 token);
};
